Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-pages.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--internal/logging/logging.go1
-rw-r--r--internal/logging/logging_test.go36
2 files changed, 22 insertions, 15 deletions
diff --git a/internal/logging/logging.go b/internal/logging/logging.go
index baf87e60..43fe65e6 100644
--- a/internal/logging/logging.go
+++ b/internal/logging/logging.go
@@ -62,7 +62,6 @@ func getExtraLogFields(r *http.Request) log.Fields {
lp, err := d.GetLookupPath(r)
if err != nil {
logFields["error"] = err.Error()
-
return logFields
}
diff --git a/internal/logging/logging_test.go b/internal/logging/logging_test.go
index 9079cc9d..f2b344a7 100644
--- a/internal/logging/logging_test.go
+++ b/internal/logging/logging_test.go
@@ -11,22 +11,27 @@ import (
"gitlab.com/gitlab-org/gitlab-pages/internal/serving"
)
-type lookupPathFunc func(*http.Request) *serving.LookupPath
+type resolver struct {
+ err error
+ f func(*http.Request) *serving.LookupPath
+}
+
+func (r *resolver) Resolve(req *http.Request) (*serving.Request, error) {
+ if r.f != nil {
+ return &serving.Request{LookupPath: r.f(req)}, nil
+ }
-func (f lookupPathFunc) Resolve(r *http.Request) (*serving.Request, error) {
- return &serving.Request{LookupPath: f(r)}, nil
+ return nil, r.err
}
func TestGetExtraLogFields(t *testing.T) {
- domainWithResolver := &domain.Domain{
- Resolver: lookupPathFunc(func(*http.Request) *serving.LookupPath {
- return &serving.LookupPath{
- ServingType: "file",
- ProjectID: 100,
- Prefix: "/prefix",
- }
- }),
- }
+ domainWithResolver := domain.New("", "", "", &resolver{f: func(*http.Request) *serving.LookupPath {
+ return &serving.LookupPath{
+ ServingType: "file",
+ ProjectID: 100,
+ Prefix: "/prefix",
+ }
+ }})
tests := []struct {
name string
@@ -38,6 +43,7 @@ func TestGetExtraLogFields(t *testing.T) {
expectedProjectID interface{}
expectedProjectPrefix interface{}
expectedServingType interface{}
+ expectedErrMsg interface{}
}{
{
name: "https",
@@ -62,7 +68,7 @@ func TestGetExtraLogFields(t *testing.T) {
expectedServingType: "file",
},
{
- name: "domain_without_resolved",
+ name: "domain_not_configured",
scheme: request.SchemeHTTP,
host: "githost.io",
domain: nil,
@@ -75,11 +81,12 @@ func TestGetExtraLogFields(t *testing.T) {
name: "no_domain",
scheme: request.SchemeHTTP,
host: "githost.io",
- domain: nil,
+ domain: domain.New("githost.io", "", "", &resolver{err: domain.ErrDomainDoesNotExist}),
expectedHTTPS: false,
expectedHost: "githost.io",
expectedProjectID: nil,
expectedServingType: nil,
+ expectedErrMsg: domain.ErrDomainDoesNotExist.Error(),
},
}
@@ -97,6 +104,7 @@ func TestGetExtraLogFields(t *testing.T) {
require.Equal(t, tt.expectedProjectID, got["pages_project_id"])
require.Equal(t, tt.expectedProjectPrefix, got["pages_project_prefix"])
require.Equal(t, tt.expectedServingType, got["pages_project_serving_type"])
+ require.Equal(t, tt.expectedErrMsg, got["error"])
})
}
}