tests: Adjust the tests to the new credentials layout

create-reload-action
Lukasz Janyst 4 years ago
parent 643f6ec984
commit 9a37010c1c
No known key found for this signature in database
GPG Key ID: 32DE641041F17A9A
  1. 6
      pkg/users/user_credentials_test.go
  2. 2
      pkg/users/user_new_test.go
  3. 16
      pkg/users/users_login_test.go
  4. 2
      pkg/users/users_new_test.go
  5. 60
      pkg/users/users_test.go

@ -37,7 +37,7 @@ func TestUpdateUser(t *testing.T) {
gomock.InOrder( gomock.InOrder(
m.pmapiClient.EXPECT().UpdateUser(gomock.Any()).Return(testPMAPIUser, nil), m.pmapiClient.EXPECT().UpdateUser(gomock.Any()).Return(testPMAPIUser, nil),
m.pmapiClient.EXPECT().ReloadKeys(gomock.Any(), testCredentials.MailboxPassword).Return(nil), m.pmapiClient.EXPECT().ReloadKeys(gomock.Any(), testCredentials.Secret.MailboxPassword).Return(nil),
m.pmapiClient.EXPECT().Addresses().Return([]*pmapi.Address{testPMAPIAddress}), m.pmapiClient.EXPECT().Addresses().Return([]*pmapi.Address{testPMAPIAddress}),
m.credentialsStore.EXPECT().UpdateEmails("user", []string{testPMAPIAddress.Email}).Return(testCredentials, nil), m.credentialsStore.EXPECT().UpdateEmails("user", []string{testPMAPIAddress.Email}).Return(testCredentials, nil),
@ -88,7 +88,7 @@ func TestCheckBridgeLogin(t *testing.T) {
user := testNewUser(t, m) user := testNewUser(t, m)
defer cleanUpUserData(user) defer cleanUpUserData(user)
err := user.CheckBridgeLogin(testCredentials.BridgePassword) err := user.CheckBridgeLogin(testCredentials.Secret.BridgePassword)
r.NoError(t, err) r.NoError(t, err)
} }
@ -111,7 +111,7 @@ func TestCheckBridgeLoginLoggedOut(t *testing.T) {
r.Error(t, err) r.Error(t, err)
defer cleanUpUserData(user) defer cleanUpUserData(user)
err = user.CheckBridgeLogin(testCredentialsDisconnected.BridgePassword) err = user.CheckBridgeLogin(testCredentialsDisconnected.Secret.BridgePassword)
r.Equal(t, ErrLoggedOutUser, err) r.Equal(t, ErrLoggedOutUser, err)
} }

@ -47,7 +47,7 @@ func TestNewUserUnlockFails(t *testing.T) {
m.credentialsStore.EXPECT().Get("user").Return(testCredentials, nil), m.credentialsStore.EXPECT().Get("user").Return(testCredentials, nil),
m.pmapiClient.EXPECT().AddAuthRefreshHandler(gomock.Any()), m.pmapiClient.EXPECT().AddAuthRefreshHandler(gomock.Any()),
m.pmapiClient.EXPECT().IsUnlocked().Return(false), m.pmapiClient.EXPECT().IsUnlocked().Return(false),
m.pmapiClient.EXPECT().Unlock(gomock.Any(), testCredentials.MailboxPassword).Return(pmapi.ErrUnlockFailed{OriginalError: errors.New("bad password")}), m.pmapiClient.EXPECT().Unlock(gomock.Any(), testCredentials.Secret.MailboxPassword).Return(pmapi.ErrUnlockFailed{OriginalError: errors.New("bad password")}),
// Handle of unlock error. // Handle of unlock error.
m.pmapiClient.EXPECT().AuthDelete(gomock.Any()).Return(nil), m.pmapiClient.EXPECT().AuthDelete(gomock.Any()).Return(nil),

@ -35,9 +35,9 @@ func TestUsersFinishLoginBadMailboxPassword(t *testing.T) {
// Set up mocks for FinishLogin. // Set up mocks for FinishLogin.
m.pmapiClient.EXPECT().AuthSalt(gomock.Any()).Return("", nil) m.pmapiClient.EXPECT().AuthSalt(gomock.Any()).Return("", nil)
m.pmapiClient.EXPECT().Unlock(gomock.Any(), testCredentials.MailboxPassword).Return(errors.New("no keys could be unlocked")) m.pmapiClient.EXPECT().Unlock(gomock.Any(), testCredentials.Secret.MailboxPassword).Return(errors.New("no keys could be unlocked"))
checkUsersFinishLogin(t, m, testAuthRefresh, testCredentials.MailboxPassword, "", ErrWrongMailboxPassword) checkUsersFinishLogin(t, m, testAuthRefresh, testCredentials.Secret.MailboxPassword, "", ErrWrongMailboxPassword)
} }
func TestUsersFinishLoginNewUser(t *testing.T) { func TestUsersFinishLoginNewUser(t *testing.T) {
@ -50,7 +50,7 @@ func TestUsersFinishLoginNewUser(t *testing.T) {
mockAddingConnectedUser(t, m) mockAddingConnectedUser(t, m)
mockEventLoopNoAction(m) mockEventLoopNoAction(m)
checkUsersFinishLogin(t, m, testAuthRefresh, testCredentials.MailboxPassword, testCredentials.UserID, nil) checkUsersFinishLogin(t, m, testAuthRefresh, testCredentials.Secret.MailboxPassword, testCredentials.UserID, nil)
} }
func TestUsersFinishLoginExistingDisconnectedUser(t *testing.T) { func TestUsersFinishLoginExistingDisconnectedUser(t *testing.T) {
@ -64,10 +64,10 @@ func TestUsersFinishLoginExistingDisconnectedUser(t *testing.T) {
// Mock process of FinishLogin of already added user. // Mock process of FinishLogin of already added user.
gomock.InOrder( gomock.InOrder(
m.pmapiClient.EXPECT().AuthSalt(gomock.Any()).Return("", nil), m.pmapiClient.EXPECT().AuthSalt(gomock.Any()).Return("", nil),
m.pmapiClient.EXPECT().Unlock(gomock.Any(), testCredentials.MailboxPassword).Return(nil), m.pmapiClient.EXPECT().Unlock(gomock.Any(), testCredentials.Secret.MailboxPassword).Return(nil),
m.pmapiClient.EXPECT().CurrentUser(gomock.Any()).Return(testPMAPIUserDisconnected, nil), m.pmapiClient.EXPECT().CurrentUser(gomock.Any()).Return(testPMAPIUserDisconnected, nil),
m.credentialsStore.EXPECT().UpdateToken(testCredentialsDisconnected.UserID, testAuthRefresh.UID, testAuthRefresh.RefreshToken).Return(testCredentials, nil), m.credentialsStore.EXPECT().UpdateToken(testCredentialsDisconnected.UserID, testAuthRefresh.UID, testAuthRefresh.RefreshToken).Return(testCredentials, nil),
m.credentialsStore.EXPECT().UpdatePassword(testCredentialsDisconnected.UserID, testCredentials.MailboxPassword).Return(testCredentials, nil), m.credentialsStore.EXPECT().UpdatePassword(testCredentialsDisconnected.UserID, testCredentials.Secret.MailboxPassword).Return(testCredentials, nil),
) )
mockInitConnectedUser(t, m) mockInitConnectedUser(t, m)
mockEventLoopNoAction(m) mockEventLoopNoAction(m)
@ -80,7 +80,7 @@ func TestUsersFinishLoginExistingDisconnectedUser(t *testing.T) {
RefreshToken: "ref", RefreshToken: "ref",
}, },
} }
checkUsersFinishLogin(t, m, authRefresh, testCredentials.MailboxPassword, testCredentialsDisconnected.UserID, nil) checkUsersFinishLogin(t, m, authRefresh, testCredentials.Secret.MailboxPassword, testCredentialsDisconnected.UserID, nil)
} }
func TestUsersFinishLoginConnectedUser(t *testing.T) { func TestUsersFinishLoginConnectedUser(t *testing.T) {
@ -95,7 +95,7 @@ func TestUsersFinishLoginConnectedUser(t *testing.T) {
// Mock process of FinishLogin of already connected user. // Mock process of FinishLogin of already connected user.
gomock.InOrder( gomock.InOrder(
m.pmapiClient.EXPECT().AuthSalt(gomock.Any()).Return("", nil), m.pmapiClient.EXPECT().AuthSalt(gomock.Any()).Return("", nil),
m.pmapiClient.EXPECT().Unlock(gomock.Any(), testCredentials.MailboxPassword).Return(nil), m.pmapiClient.EXPECT().Unlock(gomock.Any(), testCredentials.Secret.MailboxPassword).Return(nil),
m.pmapiClient.EXPECT().CurrentUser(gomock.Any()).Return(testPMAPIUser, nil), m.pmapiClient.EXPECT().CurrentUser(gomock.Any()).Return(testPMAPIUser, nil),
m.pmapiClient.EXPECT().AuthDelete(gomock.Any()).Return(nil), m.pmapiClient.EXPECT().AuthDelete(gomock.Any()).Return(nil),
) )
@ -103,7 +103,7 @@ func TestUsersFinishLoginConnectedUser(t *testing.T) {
users := testNewUsers(t, m) users := testNewUsers(t, m)
defer cleanUpUsersData(users) defer cleanUpUsersData(users)
_, err := users.FinishLogin(m.pmapiClient, testAuthRefresh, testCredentials.MailboxPassword) _, err := users.FinishLogin(m.pmapiClient, testAuthRefresh, testCredentials.Secret.MailboxPassword)
r.EqualError(t, err, "user is already connected") r.EqualError(t, err, "user is already connected")
} }

@ -85,7 +85,7 @@ func TestNewUsersWithConnectedUserWithBadToken(t *testing.T) {
m.clientManager.EXPECT().NewClient("uid", "", "acc", time.Time{}).Return(m.pmapiClient) m.clientManager.EXPECT().NewClient("uid", "", "acc", time.Time{}).Return(m.pmapiClient)
m.pmapiClient.EXPECT().AddAuthRefreshHandler(gomock.Any()) m.pmapiClient.EXPECT().AddAuthRefreshHandler(gomock.Any())
m.pmapiClient.EXPECT().IsUnlocked().Return(false) m.pmapiClient.EXPECT().IsUnlocked().Return(false)
m.pmapiClient.EXPECT().Unlock(gomock.Any(), testCredentials.MailboxPassword).Return(pmapi.ErrAuthFailed{OriginalError: errors.New("not authorized")}) m.pmapiClient.EXPECT().Unlock(gomock.Any(), testCredentials.Secret.MailboxPassword).Return(pmapi.ErrAuthFailed{OriginalError: errors.New("not authorized")})
m.pmapiClient.EXPECT().AuthDelete(gomock.Any()) m.pmapiClient.EXPECT().AuthDelete(gomock.Any())
m.credentialsStore.EXPECT().List().Return([]string{"user"}, nil) m.credentialsStore.EXPECT().List().Return([]string{"user"}, nil)

@ -62,39 +62,47 @@ var (
} }
testCredentials = &credentials.Credentials{ //nolint[gochecknoglobals] testCredentials = &credentials.Credentials{ //nolint[gochecknoglobals]
UserID: "user", UserID: "user",
Name: "username", Name: "username",
Emails: []string{"user@pm.me"}, Emails: []string{"user@pm.me"},
APIToken: "uid:acc", Secret: credentials.Secret{
MailboxPassword: []byte("pass"), APIToken: "uid:acc",
BridgePassword: "0123456789abcdef", MailboxPassword: []byte("pass"),
BridgePassword: "0123456789abcdef",
},
} }
testCredentialsSplit = &credentials.Credentials{ //nolint[gochecknoglobals] testCredentialsSplit = &credentials.Credentials{ //nolint[gochecknoglobals]
UserID: "users", UserID: "users",
Name: "usersname", Name: "usersname",
Emails: []string{"users@pm.me", "anotheruser@pm.me", "alsouser@pm.me"}, Emails: []string{"users@pm.me", "anotheruser@pm.me", "alsouser@pm.me"},
APIToken: "uid:acc", Secret: credentials.Secret{
MailboxPassword: []byte("pass"), APIToken: "uid:acc",
BridgePassword: "0123456789abcdef", MailboxPassword: []byte("pass"),
BridgePassword: "0123456789abcdef",
},
} }
testCredentialsDisconnected = &credentials.Credentials{ //nolint[gochecknoglobals] testCredentialsDisconnected = &credentials.Credentials{ //nolint[gochecknoglobals]
UserID: "userDisconnected", UserID: "userDisconnected",
Name: "username", Name: "username",
Emails: []string{"user@pm.me"}, Emails: []string{"user@pm.me"},
APIToken: "", Secret: credentials.Secret{
MailboxPassword: []byte{}, APIToken: "",
BridgePassword: "0123456789abcdef", MailboxPassword: []byte{},
BridgePassword: "0123456789abcdef",
},
} }
testCredentialsSplitDisconnected = &credentials.Credentials{ //nolint[gochecknoglobals] testCredentialsSplitDisconnected = &credentials.Credentials{ //nolint[gochecknoglobals]
UserID: "usersDisconnected", UserID: "usersDisconnected",
Name: "usersname", Name: "usersname",
Emails: []string{"users@pm.me", "anotheruser@pm.me", "alsouser@pm.me"}, Emails: []string{"users@pm.me", "anotheruser@pm.me", "alsouser@pm.me"},
APIToken: "", Secret: credentials.Secret{
MailboxPassword: []byte{}, APIToken: "",
BridgePassword: "0123456789abcdef", MailboxPassword: []byte{},
BridgePassword: "0123456789abcdef",
},
} }
usedSpace = int64(1048576) usedSpace = int64(1048576)
@ -244,10 +252,10 @@ func mockAddingConnectedUser(t *testing.T, m mocks) {
gomock.InOrder( gomock.InOrder(
// Mock of users.FinishLogin. // Mock of users.FinishLogin.
m.pmapiClient.EXPECT().AuthSalt(gomock.Any()).Return("", nil), m.pmapiClient.EXPECT().AuthSalt(gomock.Any()).Return("", nil),
m.pmapiClient.EXPECT().Unlock(gomock.Any(), testCredentials.MailboxPassword).Return(nil), m.pmapiClient.EXPECT().Unlock(gomock.Any(), testCredentials.Secret.MailboxPassword).Return(nil),
m.pmapiClient.EXPECT().CurrentUser(gomock.Any()).Return(testPMAPIUser, nil), m.pmapiClient.EXPECT().CurrentUser(gomock.Any()).Return(testPMAPIUser, nil),
m.pmapiClient.EXPECT().Addresses().Return([]*pmapi.Address{testPMAPIAddress}), m.pmapiClient.EXPECT().Addresses().Return([]*pmapi.Address{testPMAPIAddress}),
m.credentialsStore.EXPECT().Add("user", "username", testAuthRefresh.UID, testAuthRefresh.RefreshToken, testCredentials.MailboxPassword, []string{testPMAPIAddress.Email}).Return(testCredentials, nil), m.credentialsStore.EXPECT().Add("user", "username", testAuthRefresh.UID, testAuthRefresh.RefreshToken, testCredentials.Secret.MailboxPassword, []string{testPMAPIAddress.Email}).Return(testCredentials, nil),
m.credentialsStore.EXPECT().Get("user").Return(testCredentials, nil), m.credentialsStore.EXPECT().Get("user").Return(testCredentials, nil),
) )

Loading…
Cancel
Save