diff options
Diffstat (limited to 'internal/authz/middleware_test.go')
| -rw-r--r-- | internal/authz/middleware_test.go | 29 |
1 files changed, 19 insertions, 10 deletions
diff --git a/internal/authz/middleware_test.go b/internal/authz/middleware_test.go index 2d499ce..728c761 100644 --- a/internal/authz/middleware_test.go +++ b/internal/authz/middleware_test.go @@ -26,23 +26,30 @@ func junkTestHandler() http.HandlerFunc { func TestAuthentication(t *testing.T) { badToken, _, _ := GenerateNewToken() token, hash, _ := GenerateNewToken() - okUserName := "tester" - badUserName := "badb00" - tm := TokenMap{} - tm["uid:tester"] = hash + accessID := AccessID("test123") + okUserName := FriendlyName("tester") + badUserName := FriendlyName("badb00") + + tm := NewSafeTokenMap() + tm.Set(accessID, hash) + + im := NewIdentityMap() + im.Register(accessID, okUserName) cases := []struct { description string username string token string - tm TokenMap + tm *SafeTokenMap + im *IdentityMap statusCode int handler http.HandlerFunc }{ { - username: okUserName, + username: string(okUserName), token: token, tm: tm, + im: im, statusCode: http.StatusOK, description: "Good Login", handler: func(rw http.ResponseWriter, req *http.Request) { @@ -54,17 +61,19 @@ func TestAuthentication(t *testing.T) { }, }, { - username: badUserName, + username: string(badUserName), token: token, tm: tm, + im: im, statusCode: http.StatusForbidden, - description: "Bad usename", + description: "Bad username", handler: junkTestHandler(), }, { - username: okUserName, + username: string(okUserName), token: badToken, tm: tm, + im: im, statusCode: http.StatusForbidden, description: "Bad token", handler: junkTestHandler(), @@ -72,7 +81,7 @@ func TestAuthentication(t *testing.T) { } for _, tc := range cases { - authHandler := Authentication(tc.tm, tc.handler) + authHandler := Authentication(tc.tm, tc.im, tc.handler) req := httptest.NewRequest(http.MethodGet, "https://git.ofmax.li", nil) req.SetBasicAuth(tc.username, tc.token) recorder := httptest.NewRecorder() |