func testRequest(ab *authboss.Authboss, method string, postFormValues ...string) (*authboss.Context, *httptest.ResponseRecorder, *http.Request, authboss.ClientStorerErr) { r, err := http.NewRequest(method, "", nil) if err != nil { panic(err) } sessionStorer := mocks.NewMockClientStorer() ctx := mocks.MockRequestContext(ab, postFormValues...) ctx.SessionStorer = sessionStorer return ctx, httptest.NewRecorder(), r, sessionStorer }
func Test_verifyToken_InvalidToken(t *testing.T) { t.Parallel() rec, storer, _ := testSetup() storer.Users["a"] = authboss.Attributes{ StoreRecoverToken: testStdBase64Token, } ctx := mocks.MockRequestContext(rec.Authboss, "token", "asdf") if _, err := verifyToken(ctx); err != authboss.ErrUserNotFound { t.Error("Unexpected error:", err) } }
func Test_verifyToken_ExpiredToken(t *testing.T) { t.Parallel() rec, storer, _ := testSetup() storer.Users["a"] = authboss.Attributes{ StoreRecoverToken: testStdBase64Token, StoreRecoverTokenExpiry: time.Now().Add(time.Duration(-24) * time.Hour), } ctx := mocks.MockRequestContext(rec.Authboss, "token", testURLBase64Token) if _, err := verifyToken(ctx); err != errRecoveryTokenExpired { t.Error("Unexpected error:", err) } }