tests
This commit is contained in:
@@ -28,8 +28,8 @@ type TestContext struct {
|
||||
}
|
||||
|
||||
func setupTestContext() (*TestContext, error) {
|
||||
|
||||
user, err := Uc.Service.GetUserByEmail("john.doe@example.com")
|
||||
testEmail := "john.doe@example.com"
|
||||
user, err := Uc.Service.FromEmail(&testEmail)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -39,7 +39,7 @@ func setupTestContext() (*TestContext, error) {
|
||||
user: user,
|
||||
}, nil
|
||||
}
|
||||
func testCreatePasswordHandler(t *testing.T, loginCookie http.Cookie, adminCookie http.Cookie) {
|
||||
func testCreatePasswordHandler(t *testing.T) {
|
||||
invalidCookie := http.Cookie{
|
||||
Name: "jwt",
|
||||
Value: "invalid.token.here",
|
||||
@@ -58,7 +58,7 @@ func testCreatePasswordHandler(t *testing.T, loginCookie http.Cookie, adminCooki
|
||||
body, _ := json.Marshal(requestBody)
|
||||
t.Run("successful password creation request from admin", func(t *testing.T) {
|
||||
req, _ := http.NewRequest("POST", "/password", bytes.NewBuffer(body))
|
||||
req.AddCookie(&adminCookie)
|
||||
req.AddCookie(AdminCookie)
|
||||
tc.router.ServeHTTP(tc.response, req)
|
||||
logger.Error.Printf("Test results for %#v", t.Name())
|
||||
assert.Equal(t, http.StatusAccepted, tc.response.Code)
|
||||
@@ -73,11 +73,11 @@ func testCreatePasswordHandler(t *testing.T, loginCookie http.Cookie, adminCooki
|
||||
tc.response = httptest.NewRecorder()
|
||||
t.Run("failed password creation request from member", func(t *testing.T) {
|
||||
req, _ := http.NewRequest("POST", "/password", bytes.NewBuffer(body))
|
||||
req.AddCookie(&loginCookie)
|
||||
req.AddCookie(MemberCookie)
|
||||
tc.router.ServeHTTP(tc.response, req)
|
||||
|
||||
logger.Error.Printf("Test results for %#v", t.Name())
|
||||
assert.Equal(t, http.StatusForbidden, tc.response.Code)
|
||||
assert.Equal(t, http.StatusUnauthorized, tc.response.Code)
|
||||
assert.JSONEq(t, `{"errors":[{"field":"user.user","key":"server.error.unauthorized"}]}`, tc.response.Body.String())
|
||||
err = checkEmailDelivery(tc.user, false)
|
||||
assert.NoError(t, err)
|
||||
@@ -203,6 +203,7 @@ func checkPasswordMail(message *utils.Email, user *models.User) error {
|
||||
if !strings.Contains(message.Body, verification.VerificationToken) {
|
||||
return fmt.Errorf("Token(%v) has not been rendered in password mail.", verification.VerificationToken)
|
||||
}
|
||||
|
||||
if strings.Trim(tokenURL, " ") != fmt.Sprintf("%v%v/auth/password/change/%v?token=%v", config.Site.BaseURL, config.Site.FrontendPath, user.ID, verification.VerificationToken) {
|
||||
return fmt.Errorf("Token has not been rendered correctly in password mail: %v%v/auth/password/change/%v?token=%v", config.Site.BaseURL, config.Site.FrontendPath, user.ID, verification.VerificationToken)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user