Skip to content

Commit 9023fc7

Browse files
committed
settings/tokens: Add scope formatting tests
1 parent 06e6eef commit 9023fc7

File tree

2 files changed

+41
-0
lines changed

2 files changed

+41
-0
lines changed

e2e/routes/settings/tokens/index.spec.ts

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,4 +28,29 @@ test.describe('/settings/tokens', { tag: '@routes' }, () => {
2828
await expect(tokens[1].locator('[data-test-name]')).toHaveText('token-1');
2929
await expect(tokens[1].locator('[data-test-token]')).toHaveCount(0);
3030
});
31+
32+
test('scope formatting', async ({ page, msw }) => {
33+
let user = msw.db.user.create({
34+
login: 'johnnydee',
35+
name: 'John Doe',
36+
37+
avatar: 'https://avatars2.githubusercontent.com/u/1234567?v=4',
38+
});
39+
40+
await msw.authenticateAs(user);
41+
42+
msw.db.apiToken.create({
43+
user,
44+
endpointScopes: ['publish-new', 'publish-update', 'yank'],
45+
crateScopes: ['serde', 'serde-*', 'serde_*'],
46+
});
47+
48+
await page.goto('/settings/tokens');
49+
await expect(page).toHaveURL('/settings/tokens');
50+
await expect(page.locator('[data-test-api-token]')).toHaveCount(1);
51+
await expect(page.locator('[data-test-endpoint-scopes]')).toHaveText(
52+
'Scopes: publish-new , publish-update , and yank',
53+
);
54+
await expect(page.locator('[data-test-crate-scopes]')).toHaveText('Crates: serde , serde-* , and serde_*');
55+
});
3156
});

tests/routes/settings/tokens/index-test.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,4 +41,20 @@ module('/settings/tokens', function (hooks) {
4141
assert.dom('[data-test-name]', tokens[1]).hasText('token-1');
4242
assert.dom('[data-test-token]', tokens[1]).doesNotExist();
4343
});
44+
45+
test('scope formatting', async function (assert) {
46+
let { user } = prepare(this);
47+
48+
this.db.apiToken.create({
49+
user,
50+
endpointScopes: ['publish-new', 'publish-update', 'yank'],
51+
crateScopes: ['serde', 'serde-*', 'serde_*'],
52+
});
53+
54+
await visit('/settings/tokens');
55+
assert.strictEqual(currentURL(), '/settings/tokens');
56+
assert.dom('[data-test-api-token]').exists({ count: 1 });
57+
assert.dom('[data-test-endpoint-scopes]').hasText('Scopes: publish-new , publish-update , and yank');
58+
assert.dom('[data-test-crate-scopes]').hasText('Crates: serde , serde-* , and serde_*');
59+
});
4460
});

0 commit comments

Comments
 (0)