Skip to content

Commit 2e28c3b

Browse files
committed
tests/acceptance/front-page: Migrate from mirage to @crates-io/msw
1 parent 643ced3 commit 2e28c3b

File tree

1 file changed

+9
-10
lines changed

1 file changed

+9
-10
lines changed

tests/acceptance/front-page-test.js

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,23 @@ import { module, test } from 'qunit';
33

44
import { defer } from 'rsvp';
55

6+
import { loadFixtures } from '@crates-io/msw/fixtures.js';
67
import percySnapshot from '@percy/ember';
78
import a11yAudit from 'ember-a11y-testing/test-support/audit';
89
import { getPageTitle } from 'ember-page-title/test-support';
10+
import { http, HttpResponse } from 'msw';
911

1012
import { setupApplicationTest } from 'crates-io/tests/helpers';
1113

12-
import { summary } from '../../mirage/route-handlers/summary';
1314
import axeConfig from '../axe-config';
1415

1516
module('Acceptance | front page', function (hooks) {
16-
setupApplicationTest(hooks);
17+
setupApplicationTest(hooks, { msw: true });
1718

1819
test('visiting /', async function (assert) {
1920
this.owner.lookup('service:intl').locale = 'en';
2021

21-
this.server.loadFixtures();
22+
loadFixtures();
2223

2324
await visit('/');
2425

@@ -32,8 +33,8 @@ module('Acceptance | front page', function (hooks) {
3233
assert.dom('[data-test-total-downloads] [data-test-value]').hasText('143,345');
3334
assert.dom('[data-test-total-crates] [data-test-value]').hasText('23');
3435

35-
assert.dom('[data-test-new-crates] [data-test-crate-link="0"]').hasText('Inflector v1.0.0');
36-
assert.dom('[data-test-new-crates] [data-test-crate-link="0"]').hasAttribute('href', '/crates/Inflector');
36+
assert.dom('[data-test-new-crates] [data-test-crate-link="0"]').hasText('serde v1.0.0');
37+
assert.dom('[data-test-new-crates] [data-test-crate-link="0"]').hasAttribute('href', '/crates/serde');
3738

3839
assert.dom('[data-test-most-downloaded] [data-test-crate-link="0"]').hasText('serde');
3940
assert.dom('[data-test-most-downloaded] [data-test-crate-link="0"]').hasAttribute('href', '/crates/serde');
@@ -46,18 +47,16 @@ module('Acceptance | front page', function (hooks) {
4647
});
4748

4849
test('error handling', async function (assert) {
49-
this.server.get('/api/v1/summary', {}, 500);
50+
this.worker.use(http.get('/api/v1/summary', () => HttpResponse.json({}, { status: 500 })));
5051

5152
await visit('/');
5253
assert.dom('[data-test-lists]').doesNotExist();
5354
assert.dom('[data-test-error-message]').exists();
5455
assert.dom('[data-test-try-again-button]').isEnabled();
5556

5657
let deferred = defer();
57-
this.server.get('/api/v1/summary', async function (schema, request) {
58-
await deferred.promise;
59-
return summary.call(this, schema, request);
60-
});
58+
this.worker.resetHandlers();
59+
this.worker.use(http.get('/api/v1/summary', () => deferred.promise));
6160

6261
click('[data-test-try-again-button]');
6362
await waitFor('[data-test-try-again-button] [data-test-spinner]');

0 commit comments

Comments
 (0)