Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Playwright tests - stage 1 - authorization & authentication #8469

Open
Tracked by #6641
BOHEUS opened this issue Nov 12, 2024 · 8 comments
Open
Tracked by #6641

Playwright tests - stage 1 - authorization & authentication #8469

BOHEUS opened this issue Nov 12, 2024 · 8 comments

Comments

@BOHEUS
Copy link
Contributor

BOHEUS commented Nov 12, 2024

Scope of this stage:

  • login with email & password
  • login with SSO (Google, Microsoft once added)
  • login with OIDC
  • login with SAML
  • sign up with email & password
  • sign up with Social Login (Google)
  • sign up with invite link with email
  • sign up with invite link with Social Login
  • sign up with invite flow with email
  • sign up with invite flow with Social Login

Additional tasks to be done:

  • write POM for Google login page
  • add containers for SAML setup from moxybox or use their free hosted service and write POMs to automate this process (containers for self-hosted testing, service for testing in CI pipeline)
  • analyze how OIDC exactly works and implement necessary methods
  • setup nx with command npx nx run twenty-e2e-testing:setup (what's the purpose of this command? Run all tests, specific tests/projects?)
  • update .env.example
  • setup whole environment and all necessary accounts for testing
  • MAKE SURE TO SECURE SECRETS PROPERLY

CC: @Devessier

@BOHEUS
Copy link
Contributor Author

BOHEUS commented Nov 12, 2024

Login with email & password

Scenario:

  1. Open Twenty page
  2. Click "Continue" (or "Continue with email" if Google SSO login is active) button
  3. Insert login
  4. Click "Continue" button
  5. Insert password
  • insert password with less than 8 characters: error must appear once "Continue" button is clicked
  1. Login to workspace

Expected: User is logged in to workspace

@BOHEUS
Copy link
Contributor Author

BOHEUS commented Nov 12, 2024

Login with SSO

Scenario:

  1. Open Twenty page
  2. Login in with email and password
  3. Go to Settings > Accounts > Add account
  4. Provide credentials
  5. Secure connection
  6. Logout
  7. Click "Continue with Google" account

Expected: User is logged in to workspace

@BOHEUS
Copy link
Contributor Author

BOHEUS commented Nov 12, 2024

Login with OIDC

Scenario:

  1. Open Twenty page
  2. Login in with email and password
  3. Go to Settings > Security > Add SSO Security provider
  4. Type name
  5. Select OIDC protocol
  6. Provide credentials
  7. Save changes
  8. Logout
  9. Log in using OIDC method

Expected: User is logged in to workspace

@BOHEUS
Copy link
Contributor Author

BOHEUS commented Nov 12, 2024

Login with SAML

Scenario:

  1. Open Twenty page
  2. Login in with email and password
  3. Go to Settings > Security > Add SSO Security provider
  4. Type name
  5. Select OIDC protocol
  6. Provide credentials
  7. Save changes
  8. Logout
  9. Log in using OIDC method

Expected: User is logged in to workspace

@BOHEUS
Copy link
Contributor Author

BOHEUS commented Nov 12, 2024

Sign up using email & password

Scenario:

  1. Open Twenty page
  2. Click "Continue" (or "Continue with email" if Google SSO login is active) button
  3. Insert login (must be different from existing accounts)
  4. Click "Continue" button
  5. Insert password
  6. Click "Sign up" button
  7. Type name of new workspace
  8. Click "Continue" button
  9. Type first and last name of user
  10. Click "Continue" button
  11. Skip syncing with Google
  12. Skip inviting others to workspace

Expected: User is logged in to new workspace

@BOHEUS
Copy link
Contributor Author

BOHEUS commented Nov 12, 2024

Sign up with Social Login (Google)

Scenario:

  1. Open Twenty page
  2. Click "Continue with Google" button
  3. Provide credentials
  4. Type name of new workspace
  5. Click "Continue" button
  6. Type first and last name of user
  7. Click "Continue" button
  8. Skip inviting others to workspace

Expected: User is logged in to new workspace

@BOHEUS
Copy link
Contributor Author

BOHEUS commented Nov 12, 2024

Sign up with invite link with email

Scenario:

  1. Open Twenty page
  2. Login in with email and password
  3. Go to Settings > Members
  4. Copy link
  5. Logout
  6. Open copied link
  7. Insert login
  8. Click "Continue" button
  9. Insert password
  10. Click "Sign up" button
  11. Type first and last name of user
  12. Click "Continue" button
  13. Skip syncing with Google

Expected: User is logged in to workspace

@BOHEUS
Copy link
Contributor Author

BOHEUS commented Nov 12, 2024

Sign up with invite link with Social Login

Scenario:

  1. Open Twenty page
  2. Login in with email and password
  3. Go to Settings > Members
  4. Copy link
  5. Logout
  6. Open copied link
  7. Insert login
  8. Click "Continue with Google" button
  9. Provide credentials

Expected: User is logged in to workspace

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: 🆕 New
Development

No branches or pull requests

1 participant