Some checks failed
Deploy analytics worker / Deploy analytics worker to ${{ (github.ref == 'refs/heads/production' && 'production') || (github.ref == 'refs/heads/main' && 'staging') || 'preview' }} (push) Failing after 1s
i18n upload strings / Upload latest strings (push) Failing after 1s
Deploy bemo / Deploy bemo to ${{ (github.ref == 'refs/heads/bemo-production' && 'production') || (github.ref == 'refs/heads/main' && 'staging') || 'preview' }} (push) Failing after 1s
Deploy grafana resources / ${{ github.event_name == 'push' && 'Deploy grafana resources' || 'Validate grafana resources (dry run)' }} (push) Failing after 0s
End to end tests (dotcom) / Check for relevant changes (push) Failing after 0s
End to end tests (examples) / Check for relevant changes (push) Failing after 0s
End to end tests (mermaid readability) / Check for relevant changes (push) Failing after 1s
End to end tests (perf) / Check for relevant changes (push) Failing after 0s
Publish editor extensions / Publish editor extensions (push) Failing after 1s
Publish SDK packages / Remove the publish-packages label (push) Has been skipped
Checks / Tests & checks (push) Has been cancelled
Checks / Build all projects (push) Has been cancelled
Deploy templates / Deploy templates (push) Has been cancelled
End to end tests (dotcom) / End to end tests (dotcom) (push) Has been cancelled
End to end tests (mermaid readability) / End to end tests (mermaid readability) (push) Has been cancelled
End to end tests (perf) / End to end tests (perf) (push) Has been cancelled
Deploy .com / Deploy dotcom to ${{ (github.ref == 'refs/heads/production' && 'production') || (github.ref == 'refs/heads/main' && 'staging') || 'preview' }} (push) Has been cancelled
End to end tests (examples) / End to end tests (examples) (push) Has been cancelled
Publish SDK packages / Publish SDK packages (push) Has been cancelled
Publish SDK packages / Tell user released version (push) Has been cancelled
Publish SDK packages / Publishes code templates to separate repositories (push) Has been cancelled
Publish SDK packages / Deploys the template demos with the new SDK version (push) Has been cancelled
65 lines
1.9 KiB
TypeScript
65 lines
1.9 KiB
TypeScript
import { USERS } from '../../consts'
|
|
import { expect, test } from '../../fixtures/tla-test'
|
|
|
|
// Don't use stored credentials for these dialog-specific tests
|
|
test.use({ storageState: { cookies: [], origins: [] } })
|
|
|
|
test.describe('SignInDialog', () => {
|
|
test('can sign in via email code using the custom dialog', async ({
|
|
homePage,
|
|
editor,
|
|
signInDialog,
|
|
}) => {
|
|
const user = USERS[test.info().parallelIndex]
|
|
|
|
await homePage.expectSignInButtonVisible()
|
|
await homePage.signInButton.click()
|
|
|
|
await signInDialog.continueWithEmail(user)
|
|
await signInDialog.expectCodeStageVisible()
|
|
|
|
await signInDialog.fillCode('424242')
|
|
|
|
await editor.isLoaded()
|
|
await expect(homePage.signInButton).not.toBeVisible()
|
|
await expect(editor.sidebarToggle).toBeVisible()
|
|
})
|
|
|
|
test('resend is available on code stage', async ({ homePage, signInDialog }) => {
|
|
const user = USERS[test.info().parallelIndex]
|
|
|
|
await homePage.expectSignInButtonVisible()
|
|
await homePage.signInButton.click()
|
|
|
|
await signInDialog.continueWithEmail(user)
|
|
await signInDialog.expectCodeStageVisible()
|
|
await signInDialog.clickResend()
|
|
|
|
// Code input should still be visible and empty after resend
|
|
await expect(signInDialog.codeInput).toBeVisible()
|
|
})
|
|
|
|
// Dialog close behaviors
|
|
test('can close dialog during code entry stage', async ({ homePage, signInDialog, page }) => {
|
|
const user = USERS[test.info().parallelIndex]
|
|
|
|
await homePage.expectSignInButtonVisible()
|
|
await homePage.signInButton.click()
|
|
|
|
// Complete email stage
|
|
await signInDialog.continueWithEmail(user)
|
|
await signInDialog.expectCodeStageVisible()
|
|
|
|
// Close dialog without entering code
|
|
await page.keyboard.press('Escape')
|
|
|
|
// Verify dialog is closed and user remains signed out
|
|
await expect(signInDialog.codeInput).not.toBeVisible()
|
|
await homePage.expectSignInButtonVisible()
|
|
|
|
// Verify user can restart flow by reopening dialog
|
|
await homePage.signInButton.click()
|
|
await signInDialog.expectInitialElements()
|
|
})
|
|
})
|