GODT-1166: Reduce the number of auth for live test

- Changed: Do not reauth controller clients.
- Changed: Verbosisty is set only once before run
- Changed: AddUser takes TestAccount as argument
- Added: Setup/clean up before/after test run
- Added: Access to the current refresh token from pmapi.Client interface.
- Added: Context function to add test a user to bridge without login, just call users.FinishLogin.
- Added: PMAPIController.GetAuthClient returns authenticated client for username.
- Added: Persistent clients does not loggout after every scenario.
- Changed: Disabled no-internet tests.
This commit is contained in:
Jakub
2021-05-19 09:57:36 +02:00
committed by Jakub Cuth
parent 5bf359d34f
commit 0c6a098af9
25 changed files with 334 additions and 86 deletions

View File

@ -15,7 +15,7 @@ Feature: IMAP auth
Then IMAP response is "IMAP error: NO account is logged out, use the app to login again"
Scenario: Authenticates with connected user that was loaded without internet
Given there is connected user "user"
Given there is user "user" which just logged in
And there is no internet connection
When bridge starts
And the internet connection is restored
@ -28,13 +28,13 @@ Feature: IMAP auth
Then "user" is connected
Scenario: Authenticates with freshly logged-out user
Given there is connected user "user"
Given there is user "user" which just logged in
When "user" logs out
And IMAP client authenticates "user"
Then IMAP response is "IMAP error: NO account is logged out, use the app to login again"
Scenario: Authenticates user which was re-logged in
Given there is connected user "user"
Given there is user "user" which just logged in
When "user" logs out
And IMAP client authenticates "user"
Then IMAP response is "IMAP error: NO account is logged out, use the app to login again"

View File

@ -1,15 +1,17 @@
Feature: Servers are closed when no internet
# FIXME: Locally works, has lags on CI. Looks like it breaks other tests as well.
@ignore
Scenario: All connection are closed and then restored multiple times
Given there is connected user "user"
And there is IMAP client "i1" logged in as "user"
And there is SMTP client "s1" logged in as "user"
When there is no internet connection
And 1 second pass
And 3 seconds pass
Then IMAP client "i1" is logged out
And SMTP client "s1" is logged out
Given the internet connection is restored
And 1 second pass
And 3 seconds pass
And there is IMAP client "i2" logged in as "user"
And there is SMTP client "s2" logged in as "user"
When IMAP client "i2" gets info of "INBOX"
@ -17,11 +19,11 @@ Feature: Servers are closed when no internet
Then IMAP response to "i2" is "OK"
Then SMTP response to "s2" is "OK"
When there is no internet connection
And 1 second pass
And 3 seconds pass
Then IMAP client "i2" is logged out
And SMTP client "s2" is logged out
Given the internet connection is restored
And 1 second pass
And 3 seconds pass
And there is IMAP client "i3" logged in as "user"
And there is SMTP client "s3" logged in as "user"
When IMAP client "i3" gets info of "INBOX"

View File

@ -1,6 +1,6 @@
Feature: Start bridge
Scenario: Start with connected user, database file and internet connection
Given there is connected user "user"
Given there is user "user" which just logged in
And there is database file for "user"
When bridge starts
Then "user" is connected
@ -8,7 +8,7 @@ Feature: Start bridge
And "user" has running event loop
Scenario: Start with connected user, database file and no internet connection
Given there is connected user "user"
Given there is user "user" which just logged in
And there is database file for "user"
And there is no internet connection
When bridge starts
@ -17,7 +17,7 @@ Feature: Start bridge
And "user" has running event loop
Scenario: Start with connected user, no database file and internet connection
Given there is connected user "user"
Given there is user "user" which just logged in
And there is no database file for "user"
When bridge starts
Then "user" is connected
@ -25,7 +25,7 @@ Feature: Start bridge
And "user" has running event loop
Scenario: Start with connected user, no database file and no internet connection
Given there is connected user "user"
Given there is user "user" which just logged in
And there is no database file for "user"
And there is no internet connection
When bridge starts

View File

@ -1,18 +1,18 @@
Feature: Delete user
Scenario: Deleting connected user
Given there is connected user "user"
Given there is user "user" which just logged in
When user deletes "user"
Then last response is "OK"
And "user" has database file
Scenario: Deleting connected user with cache
Given there is connected user "user"
Given there is user "user" which just logged in
When user deletes "user" with cache
Then last response is "OK"
And "user" does not have database file
Scenario: Deleting connected user without database file
Given there is connected user "user"
Given there is user "user" which just logged in
And there is no database file for "user"
When user deletes "user" with cache
Then last response is "OK"

View File

@ -1,6 +1,6 @@
Feature: Re-login
Scenario: Re-login with connected user and database file
Given there is connected user "user"
Given there is user "user" which just logged in
And there is database file for "user"
When "user" logs in
Then last response is "failed to finish login: user is already connected"
@ -9,7 +9,7 @@ Feature: Re-login
@ignore
Scenario: Re-login with connected user and no database file
Given there is connected user "user"
Given there is user "user" which just logged in
And there is no database file for "user"
When "user" logs in
Then last response is "failed to finish login: user is already connected"