refactor
This commit is contained in:
@@ -78,7 +78,6 @@ func testUserController(t *testing.T) {
|
||||
database.DB.Model(&models.User{}).Where("email = ?", "john.doe@example.com").Update("status", constants.ActiveStatus)
|
||||
loginEmail := testLoginHandler(t)
|
||||
testCurrentUserHandler(t, loginEmail)
|
||||
|
||||
// creating a admin cookie
|
||||
c, w, _ := GetMockedJSONContext([]byte(`{
|
||||
"email": "admin@example.com",
|
||||
@@ -402,7 +401,6 @@ func validateUser(assert bool, wantDBData map[string]interface{}) error {
|
||||
if err != nil {
|
||||
return fmt.Errorf("Error in database ops: %#v", err)
|
||||
}
|
||||
|
||||
if assert != (len(*users) != 0) {
|
||||
return fmt.Errorf("User entry query didn't met expectation: %v != %#v", assert, *users)
|
||||
}
|
||||
@@ -575,7 +573,7 @@ func testUpdateUser(t *testing.T) {
|
||||
var licenceRepo repositories.LicenceInterface = &repositories.LicenceRepository{}
|
||||
category, err := licenceRepo.FindCategoryByName("B")
|
||||
assert.NoError(t, err)
|
||||
u.Licence.Categories = []models.Category{category}
|
||||
u.Licence.Categories = []*models.Category{&category}
|
||||
},
|
||||
expectedStatus: http.StatusAccepted,
|
||||
},
|
||||
@@ -594,7 +592,7 @@ func testUpdateUser(t *testing.T) {
|
||||
category, err := licenceRepo.FindCategoryByName("A")
|
||||
category2, err := licenceRepo.FindCategoryByName("BE")
|
||||
assert.NoError(t, err)
|
||||
u.Licence.Categories = []models.Category{category, category2}
|
||||
u.Licence.Categories = []*models.Category{&category, &category2}
|
||||
},
|
||||
expectedStatus: http.StatusAccepted,
|
||||
},
|
||||
@@ -612,7 +610,7 @@ func testUpdateUser(t *testing.T) {
|
||||
var licenceRepo repositories.LicenceInterface = &repositories.LicenceRepository{}
|
||||
category, err := licenceRepo.FindCategoryByName("A")
|
||||
assert.NoError(t, err)
|
||||
u.Licence.Categories = []models.Category{category}
|
||||
u.Licence.Categories = []*models.Category{&category}
|
||||
},
|
||||
expectedStatus: http.StatusAccepted,
|
||||
},
|
||||
@@ -627,7 +625,7 @@ func testUpdateUser(t *testing.T) {
|
||||
u.LastName = "Doe Updated"
|
||||
u.Phone = "01738484994"
|
||||
u.Licence.Number = "B072RRE2I50"
|
||||
u.Licence.Categories = []models.Category{}
|
||||
u.Licence.Categories = []*models.Category{}
|
||||
},
|
||||
expectedStatus: http.StatusAccepted,
|
||||
},
|
||||
@@ -806,11 +804,9 @@ func testUpdateUser(t *testing.T) {
|
||||
assert.Equal(t, updatedUser.Company, updatedUserFromDB.Company, "Company mismatch")
|
||||
assert.Equal(t, updatedUser.Phone, updatedUserFromDB.Phone, "Phone mismatch")
|
||||
assert.Equal(t, updatedUser.Notes, updatedUserFromDB.Notes, "Notes mismatch")
|
||||
assert.Equal(t, updatedUser.ProfilePicture, updatedUserFromDB.ProfilePicture, "ProfilePicture mismatch")
|
||||
assert.Equal(t, updatedUser.Address, updatedUserFromDB.Address, "Address mismatch")
|
||||
assert.Equal(t, updatedUser.ZipCode, updatedUserFromDB.ZipCode, "ZipCode mismatch")
|
||||
assert.Equal(t, updatedUser.City, updatedUserFromDB.City, "City mismatch")
|
||||
assert.Equal(t, updatedUser.PaymentStatus, updatedUserFromDB.PaymentStatus, "PaymentStatus mismatch")
|
||||
assert.Equal(t, updatedUser.Status, updatedUserFromDB.Status, "Status mismatch")
|
||||
assert.Equal(t, updatedUser.RoleID, updatedUserFromDB.RoleID, "RoleID mismatch")
|
||||
|
||||
@@ -839,8 +835,17 @@ func testUpdateUser(t *testing.T) {
|
||||
assert.Equal(t, updatedUser.Licence.IssuingCountry, updatedUserFromDB.Licence.IssuingCountry, "Licence.IssuingCountry mismatch")
|
||||
}
|
||||
|
||||
// For slices or more complex nested structures, you might want to use deep equality checks
|
||||
assert.ElementsMatch(t, updatedUser.Consents, updatedUserFromDB.Consents, "Consents mismatch")
|
||||
if len(updatedUser.Consents) > 0 {
|
||||
for i := range updatedUser.Consents {
|
||||
assert.Equal(t, updatedUser.Consents[i].ConsentType, updatedUserFromDB.Consents[i].ConsentType, "ConsentType mismatch at index %d", i)
|
||||
assert.Equal(t, updatedUser.Consents[i].Email, updatedUserFromDB.Consents[i].Email, "ConsentEmail mismatch at index %d", i)
|
||||
assert.Equal(t, updatedUser.Consents[i].FirstName, updatedUserFromDB.Consents[i].FirstName, "ConsentFirstName mismatch at index %d", i)
|
||||
assert.Equal(t, updatedUser.Consents[i].LastName, updatedUserFromDB.Consents[i].LastName, "ConsentLastName mismatch at index %d", i)
|
||||
assert.Equal(t, updatedUser.Consents[i].UserID, updatedUserFromDB.Consents[i].UserID, "Consent UserId mismatch at index %d", i)
|
||||
}
|
||||
} else {
|
||||
assert.Emptyf(t, updatedUserFromDB.Licence.Categories, "Categories aren't empty when they should")
|
||||
}
|
||||
if len(updatedUser.Licence.Categories) > 0 {
|
||||
for i := range updatedUser.Licence.Categories {
|
||||
assert.Equal(t, updatedUser.Licence.Categories[i].Name, updatedUserFromDB.Licence.Categories[i].Name, "Category Category mismatch at index %d", i)
|
||||
@@ -1272,7 +1277,7 @@ func getTestUsers() []RegisterUserTest {
|
||||
{
|
||||
Name: "Correct Licence number, should pass",
|
||||
WantResponse: http.StatusCreated,
|
||||
WantDBData: map[string]interface{}{"email": "john.correctLicenceNumber@example.com"},
|
||||
WantDBData: map[string]interface{}{"email": "john.correctlicencenumber@example.com"},
|
||||
Assert: true,
|
||||
Input: GenerateInputJSON(customizeInput(func(user models.User) models.User {
|
||||
user.Email = "john.correctLicenceNumber@example.com"
|
||||
|
||||
Reference in New Issue
Block a user