Skip to content

Commit e20f2d9

Browse files
authored
Merge pull request #12401 from Turbo87/msw-data-migration
Update `@msw/data` to v1
2 parents 85c722a + c05f2aa commit e20f2d9

File tree

240 files changed

+2929
-2927
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

240 files changed

+2929
-2927
lines changed

e2e/acceptance/api-token.spec.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,29 +3,29 @@ import { http, HttpResponse } from 'msw';
33

44
test.describe('Acceptance | api-tokens', { tag: '@acceptance' }, () => {
55
test.beforeEach(async ({ msw }) => {
6-
let user = msw.db.user.create({
6+
let user = await msw.db.user.create({
77
login: 'johnnydee',
88
name: 'John Doe',
99
email: 'john@doe.com',
1010
avatar: 'https://avatars2.githubusercontent.com/u/1234567?v=4',
1111
});
1212

13-
msw.db.apiToken.create({
13+
await msw.db.apiToken.create({
1414
user,
1515
name: 'foo',
1616
createdAt: '2017-08-01T12:34:56',
1717
lastUsedAt: '2017-11-02T01:45:14',
1818
});
1919

20-
msw.db.apiToken.create({
20+
await msw.db.apiToken.create({
2121
user,
2222
name: 'BAR',
2323
createdAt: '2017-11-19T17:59:22',
2424
lastUsedAt: null,
2525
expiredAt: '2017-12-19T17:59:22',
2626
});
2727

28-
msw.db.apiToken.create({
28+
await msw.db.apiToken.create({
2929
user,
3030
name: 'recently expired',
3131
createdAt: '2017-08-01T12:34:56',
@@ -79,7 +79,7 @@ test.describe('Acceptance | api-tokens', { tag: '@acceptance' }, () => {
7979
await expect(page.locator('[data-test-api-token]')).toHaveCount(3);
8080

8181
await page.click('[data-test-api-token="1"] [data-test-revoke-token-button]');
82-
expect(msw.db.apiToken.findMany({}).length, 'API token has been deleted from the backend database').toBe(2);
82+
expect(msw.db.apiToken.findMany(null).length, 'API token has been deleted from the backend database').toBe(2);
8383

8484
await expect(page.locator('[data-test-api-token]')).toHaveCount(2);
8585
await expect(page.locator('[data-test-api-token="2"]')).toBeVisible();
@@ -134,7 +134,7 @@ test.describe('Acceptance | api-tokens', { tag: '@acceptance' }, () => {
134134

135135
await page.click('[data-test-generate]');
136136

137-
let token = msw.db.apiToken.findFirst({ where: { name: { equals: 'the new token' } } })?.token;
137+
let token = msw.db.apiToken.findFirst(q => q.where({ name: 'the new token' }))?.token;
138138
expect(token, 'API token has been created in the backend database').toBeTruthy();
139139

140140
await expect(page.locator('[data-test-api-token="4"] [data-test-name]')).toHaveText('the new token');
@@ -152,7 +152,7 @@ test.describe('Acceptance | api-tokens', { tag: '@acceptance' }, () => {
152152
await page.click('[data-test-scope="publish-update"]');
153153
await page.click('[data-test-generate]');
154154

155-
let token = msw.db.apiToken.findFirst({ where: { name: { equals: 'the new token' } } })?.token;
155+
let token = msw.db.apiToken.findFirst(q => q.where({ name: 'the new token' }))?.token;
156156
await expect(page.locator('[data-test-token]')).toHaveText(token);
157157

158158
// leave the API tokens page

e2e/acceptance/categories.spec.ts

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,14 @@ import { expect, test } from '@/e2e/helper';
22

33
test.describe('Acceptance | categories', { tag: '@acceptance' }, () => {
44
test('listing categories', async ({ page, msw, percy, a11y }) => {
5-
msw.db.category.create({ category: 'API bindings' });
6-
let algos = msw.db.category.create({ category: 'Algorithms' });
7-
msw.db.crate.create({ categories: [algos] });
8-
let async = msw.db.category.create({ category: 'Asynchronous' });
9-
Array.from({ length: 15 }).forEach(() => msw.db.crate.create({ categories: [async] }));
10-
msw.db.category.create({ category: 'Everything', crates_cnt: 1234 });
5+
await msw.db.category.create({ category: 'API bindings' });
6+
let algos = await msw.db.category.create({ category: 'Algorithms' });
7+
await msw.db.crate.create({ categories: [algos] });
8+
let async = await msw.db.category.create({ category: 'Asynchronous' });
9+
for (let i = 0; i < 15; i++) {
10+
await msw.db.crate.create({ categories: [async] });
11+
}
12+
await msw.db.category.create({ category: 'Everything', crates_cnt: 1234 });
1113

1214
await page.goto('/categories');
1315

@@ -21,7 +23,7 @@ test.describe('Acceptance | categories', { tag: '@acceptance' }, () => {
2123
});
2224

2325
test('category/:category_id index default sort is recent-downloads', async ({ page, msw, percy, a11y }) => {
24-
msw.db.category.create({ category: 'Algorithms' });
26+
await msw.db.category.create({ category: 'Algorithms' });
2527
await page.goto('/categories/algorithms');
2628

2729
await expect(page.locator('[data-test-category-sort] [data-test-current-order]')).toHaveText('Recent Downloads');
@@ -31,8 +33,8 @@ test.describe('Acceptance | categories', { tag: '@acceptance' }, () => {
3133
});
3234

3335
test('listing category slugs', async ({ page, msw }) => {
34-
msw.db.category.create({ category: 'Algorithms', description: 'Crates for algorithms' });
35-
msw.db.category.create({ category: 'Asynchronous', description: 'Async crates' });
36+
await msw.db.category.create({ category: 'Algorithms', description: 'Crates for algorithms' });
37+
await msw.db.category.create({ category: 'Asynchronous', description: 'Async crates' });
3638
await page.goto('/category_slugs');
3739

3840
await expect(page.locator('[data-test-category-slug="algorithms"]')).toHaveText('algorithms');
@@ -45,7 +47,7 @@ test.describe('Acceptance | categories', { tag: '@acceptance' }, () => {
4547
test.describe('Acceptance | categories (locale: de)', { tag: '@acceptance' }, () => {
4648
test.use({ locale: 'de' });
4749
test('listing categories', async ({ page, msw }) => {
48-
msw.db.category.create({ category: 'Everything', crates_cnt: 1234 });
50+
await msw.db.category.create({ category: 'Everything', crates_cnt: 1234 });
4951
await page.goto('categories');
5052

5153
await expect(page.locator('[data-test-category="everything"] [data-test-crate-count]')).toHaveText('1.234 crates');

e2e/acceptance/crate-deletion.spec.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@ import { expect, test } from '@/e2e/helper';
22

33
test.describe('Acceptance | crate deletion', { tag: '@acceptance' }, () => {
44
test('happy path', async ({ page, msw }) => {
5-
let user = msw.db.user.create();
5+
let user = await msw.db.user.create();
66
await msw.authenticateAs(user);
77

8-
let crate = msw.db.crate.create({ name: 'foo' });
9-
msw.db.version.create({ crate });
10-
msw.db.crateOwnership.create({ crate, user });
8+
let crate = await msw.db.crate.create({ name: 'foo' });
9+
await msw.db.version.create({ crate });
10+
await msw.db.crateOwnership.create({ crate, user });
1111

1212
await page.goto('/crates/foo');
1313
await expect(page).toHaveURL('/crates/foo');
@@ -32,7 +32,7 @@ test.describe('Acceptance | crate deletion', { tag: '@acceptance' }, () => {
3232
let message = 'Crate foo has been successfully deleted.';
3333
await expect(page.locator('[data-test-notification-message="success"]')).toHaveText(message);
3434

35-
crate = msw.db.crate.findFirst({ where: { name: { equals: 'foo' } } });
36-
expect(crate).toBeNull();
35+
crate = msw.db.crate.findFirst(q => q.where({ name: 'foo' }));
36+
expect(crate).toBeUndefined();
3737
});
3838
});

e2e/acceptance/crate-dependencies.spec.ts

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { http, HttpResponse } from 'msw';
44

55
test.describe('Acceptance | crate dependencies page', { tag: '@acceptance' }, () => {
66
test('shows the lists of dependencies', async ({ page, msw, percy, a11y }) => {
7-
loadFixtures(msw.db);
7+
await loadFixtures(msw.db);
88

99
await page.goto('/crates/nanomsg/dependencies');
1010
await expect(page).toHaveURL('/crates/nanomsg/0.6.1/dependencies');
@@ -19,8 +19,8 @@ test.describe('Acceptance | crate dependencies page', { tag: '@acceptance' }, ()
1919
});
2020

2121
test('empty list case', async ({ page, msw }) => {
22-
let crate = msw.db.crate.create({ name: 'nanomsg' });
23-
msw.db.version.create({ crate, num: '0.6.1' });
22+
let crate = await msw.db.crate.create({ name: 'nanomsg' });
23+
await msw.db.version.create({ crate, num: '0.6.1' });
2424

2525
await page.goto('/crates/nanomsg/dependencies');
2626

@@ -51,8 +51,8 @@ test.describe('Acceptance | crate dependencies page', { tag: '@acceptance' }, ()
5151
});
5252

5353
test('shows an error page if version is not found', async ({ page, msw }) => {
54-
let crate = msw.db.crate.create({ name: 'foo' });
55-
msw.db.version.create({ crate, num: '2.0.0' });
54+
let crate = await msw.db.crate.create({ name: 'foo' });
55+
await msw.db.version.create({ crate, num: '2.0.0' });
5656

5757
await page.goto('/crates/foo/1.0.0/dependencies');
5858
await expect(page).toHaveURL('/crates/foo/1.0.0/dependencies');
@@ -63,8 +63,8 @@ test.describe('Acceptance | crate dependencies page', { tag: '@acceptance' }, ()
6363
});
6464

6565
test('shows error message if loading of dependencies fails', async ({ page, msw }) => {
66-
let crate = msw.db.crate.create({ name: 'foo' });
67-
msw.db.version.create({ crate, num: '1.0.0' });
66+
let crate = await msw.db.crate.create({ name: 'foo' });
67+
await msw.db.version.create({ crate, num: '1.0.0' });
6868

6969
let error = HttpResponse.json({}, { status: 500 });
7070
await msw.worker.use(http.get('/api/v1/crates/:crate_name/:version_num/dependencies', () => error));
@@ -78,16 +78,16 @@ test.describe('Acceptance | crate dependencies page', { tag: '@acceptance' }, ()
7878
});
7979

8080
test('hides description if loading of dependency details fails', async ({ page, msw }) => {
81-
let crate = msw.db.crate.create({ name: 'nanomsg' });
82-
let version = msw.db.version.create({ crate, num: '0.6.1' });
81+
let crate = await msw.db.crate.create({ name: 'nanomsg' });
82+
let version = await msw.db.version.create({ crate, num: '0.6.1' });
8383

84-
let foo = msw.db.crate.create({ name: 'foo', description: 'This is the foo crate' });
85-
msw.db.version.create({ crate: foo, num: '1.0.0' });
86-
msw.db.dependency.create({ crate: foo, version, req: '^1.0.0', kind: 'normal' });
84+
let foo = await msw.db.crate.create({ name: 'foo', description: 'This is the foo crate' });
85+
await msw.db.version.create({ crate: foo, num: '1.0.0' });
86+
await msw.db.dependency.create({ crate: foo, version, req: '^1.0.0', kind: 'normal' });
8787

88-
let bar = msw.db.crate.create({ name: 'bar', description: 'This is the bar crate' });
89-
msw.db.version.create({ crate: bar, num: '2.3.4' });
90-
msw.db.dependency.create({ crate: bar, version, req: '^2.0.0', kind: 'normal' });
88+
let bar = await msw.db.crate.create({ name: 'bar', description: 'This is the bar crate' });
89+
await msw.db.version.create({ crate: bar, num: '2.3.4' });
90+
await msw.db.dependency.create({ crate: bar, version, req: '^2.0.0', kind: 'normal' });
9191

9292
let error = HttpResponse.json({}, { status: 500 });
9393
await msw.worker.use(http.get('/api/v1/crates', () => error));

e2e/acceptance/crate-following.spec.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ import { http, HttpResponse } from 'msw';
44

55
test.describe('Acceptance | Crate following', { tag: '@acceptance' }, () => {
66
async function prepare(msw, { skipLogin = false, following = false } = {}) {
7-
let crate = msw.db.crate.create({ name: 'nanomsg' });
8-
msw.db.version.create({ crate, num: '0.6.0' });
7+
let crate = await msw.db.crate.create({ name: 'nanomsg' });
8+
await msw.db.version.create({ crate, num: '0.6.0' });
99

1010
let loggedIn = !skipLogin;
1111
if (loggedIn) {
1212
let followedCrates = following ? [crate] : [];
13-
let user = msw.db.user.create({ followedCrates });
13+
let user = await msw.db.user.create({ followedCrates });
1414
await msw.authenticateAs(user);
1515
}
1616
}

e2e/acceptance/crate-navtabs.spec.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ import { Locator } from '@playwright/test';
33

44
test.describe('Acceptance | crate navigation tabs', { tag: '@acceptance' }, () => {
55
test('basic navigation between tabs works as expected', async ({ page, msw }) => {
6-
let crate = msw.db.crate.create({ name: 'nanomsg' });
7-
msw.db.version.create({ crate, num: '0.6.1' });
6+
let crate = await msw.db.crate.create({ name: 'nanomsg' });
7+
await msw.db.version.create({ crate, num: '0.6.1' });
88

99
const tabReadme = page.locator('[data-test-readme-tab] a');
1010
const tabVersions = page.locator('[data-test-versions-tab] a');

0 commit comments

Comments
 (0)