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
48 lines
1.7 KiB
TypeScript
48 lines
1.7 KiB
TypeScript
import { USERS } from '../../consts'
|
|
import { expect, test } from '../../fixtures/tla-test'
|
|
|
|
// Don't use stored credentials
|
|
test.use({ storageState: { cookies: [], origins: [] } })
|
|
|
|
test('can login', async ({ homePage, editor }) => {
|
|
await expect(homePage.signInButton).toBeVisible()
|
|
const user = USERS[test.info().parallelIndex]
|
|
await homePage.loginAs(user)
|
|
await editor.isLoaded()
|
|
await expect(homePage.signInButton).not.toBeVisible()
|
|
await expect(editor.sidebarToggle).toBeVisible()
|
|
})
|
|
|
|
test('can sign out', async ({ homePage, editor, sidebar }) => {
|
|
await test.step('Login', async () => {
|
|
const user = USERS[test.info().parallelIndex]
|
|
await homePage.loginAs(user)
|
|
})
|
|
await editor.isLoaded()
|
|
await homePage.expectSignInButtonNotVisible()
|
|
await editor.ensureSidebarOpen()
|
|
await sidebar.signOut()
|
|
await homePage.expectSignInButtonVisible()
|
|
})
|
|
|
|
test('shows anonymous SDK content', async ({ page, homePage }) => {
|
|
await homePage.expectSignInButtonVisible()
|
|
await expect(page.getByTestId('tla-anon-dotdev-link')).toBeVisible()
|
|
|
|
await page.getByTestId('tla-anon-dotdev-dismiss-button').click()
|
|
await expect(page.getByTestId('tla-anon-dotdev-link')).not.toBeVisible()
|
|
})
|
|
|
|
test('shows a comment button that prompts sign in', async ({ page, homePage, signInDialog }) => {
|
|
await homePage.expectSignInButtonVisible()
|
|
|
|
const commentButton = page.getByTestId('quick-actions.comment')
|
|
await expect(commentButton).toBeVisible()
|
|
await commentButton.click()
|
|
|
|
await signInDialog.expectInitialElements()
|
|
// The comment tool itself is never registered for signed-out visitors, so the button only opens
|
|
// the dialog — it can't drop the canvas into a half-mounted tool.
|
|
await expect(commentButton).toHaveAttribute('aria-pressed', 'false')
|
|
})
|