diff options
| -rw-r--r-- | gui/src/renderer/components/DeviceRevokedView.tsx | 2 | ||||
| -rw-r--r-- | gui/test/e2e/installed/state-dependent/device-revoked.spec.ts | 29 |
2 files changed, 30 insertions, 1 deletions
diff --git a/gui/src/renderer/components/DeviceRevokedView.tsx b/gui/src/renderer/components/DeviceRevokedView.tsx index f12bbbf9ff..3246952335 100644 --- a/gui/src/renderer/components/DeviceRevokedView.tsx +++ b/gui/src/renderer/components/DeviceRevokedView.tsx @@ -66,7 +66,7 @@ export function DeviceRevokedView() { <StyledStatusIcon> <ImageView source="icon-fail" height={60} width={60} /> </StyledStatusIcon> - <StyledTitle> + <StyledTitle data-testid="title"> {messages.pgettext('device-management', 'Device is inactive')} </StyledTitle> <StyledMessage> diff --git a/gui/test/e2e/installed/state-dependent/device-revoked.spec.ts b/gui/test/e2e/installed/state-dependent/device-revoked.spec.ts new file mode 100644 index 0000000000..22aa30b3d5 --- /dev/null +++ b/gui/test/e2e/installed/state-dependent/device-revoked.spec.ts @@ -0,0 +1,29 @@ +import { expect, test } from '@playwright/test'; +import { Page } from 'playwright'; +import { RoutePath } from '../../../../src/renderer/lib/routes'; +import { TestUtils } from '../../utils'; + +import { startInstalledApp } from '../installed-utils'; + +// This test expects the daemon to be logged in to a revoked device. + +let page: Page; +let util: TestUtils; + +test.beforeAll(async () => { + ({ page, util } = await startInstalledApp()); +}); + +test.afterAll(async () => { + await page.close(); +}); + +test('App should fail to login', async () => { + expect(await util.currentRoute()).toEqual(RoutePath.deviceRevoked); + + await expect(page.getByTestId('title')).toHaveText('Device is inactive'); + + expect(await util.waitForNavigation(() => { + page.getByText('Go to login').click(); + })).toEqual(RoutePath.login); +}); |
