|
1 | 1 | import { module, test } from 'qunit';
|
2 | 2 | import { setupApplicationTest } from 'ember-qunit';
|
3 | 3 | import { visit, find, click } from '@ember/test-helpers';
|
| 4 | +import { macroCondition, dependencySatisfies } from '@embroider/macros'; |
4 | 5 |
|
5 | 6 | module('Acceptance | Engine Router Service | Refresh Method', function (hooks) {
|
6 | 7 | setupApplicationTest(hooks);
|
7 | 8 |
|
8 | 9 | test('refresh without params triggers refresh with current route', async function (assert) {
|
| 10 | + assert.expect(1); |
| 11 | + |
9 | 12 | await visit('/routable-engine-demo/ember-blog/new');
|
10 | 13 |
|
11 | 14 | let counter = await find('.route-refresh-counter').textContent;
|
12 | 15 | await click('.refresh');
|
13 | 16 |
|
14 |
| - counter = parseInt(counter, 10); |
15 |
| - counter = ++counter; |
16 |
| - counter = counter.toString(); |
17 |
| - assert.dom('.route-refresh-counter').hasText(counter); |
| 17 | + if (macroCondition(dependencySatisfies('ember-source', '>= 4.1.0'))) { |
| 18 | + counter = parseInt(counter, 10); |
| 19 | + counter = ++counter; |
| 20 | + counter = counter.toString(); |
| 21 | + assert.dom('.route-refresh-counter').hasText(counter); |
| 22 | + } else { |
| 23 | + // eslint-disable-next-line qunit/no-conditional-assertions |
| 24 | + assert.throws( |
| 25 | + 'Refresh method is not available in ember-source below v4.1' |
| 26 | + ); |
| 27 | + } |
18 | 28 | });
|
19 | 29 |
|
20 | 30 | test('refresh with params triggers refresh on provided route', async function (assert) {
|
| 31 | + assert.expect(1); |
| 32 | + |
21 | 33 | await visit('/routable-engine-demo/ember-blog/new');
|
22 | 34 |
|
23 | 35 | let counter = await find('.route-refresh-counter').textContent;
|
24 | 36 | await click('.refresh-route');
|
25 | 37 |
|
26 |
| - counter = parseInt(counter, 10); |
27 |
| - counter = ++counter; |
28 |
| - counter = counter.toString(); |
29 |
| - assert.dom('.route-refresh-counter').hasText(counter); |
| 38 | + if (macroCondition(dependencySatisfies('ember-source', '>= 4.1.0'))) { |
| 39 | + counter = parseInt(counter, 10); |
| 40 | + counter = ++counter; |
| 41 | + counter = counter.toString(); |
| 42 | + assert.dom('.route-refresh-counter').hasText(counter); |
| 43 | + } else { |
| 44 | + // eslint-disable-next-line qunit/no-conditional-assertions |
| 45 | + assert.throws( |
| 46 | + 'Refresh method is not available in ember-source below v4.1' |
| 47 | + ); |
| 48 | + } |
30 | 49 | });
|
31 | 50 |
|
32 | 51 | test('refresh external route', async function (assert) {
|
| 52 | + assert.expect(1); |
| 53 | + |
33 | 54 | await visit('/routable-engine-demo/ember-blog/new');
|
34 | 55 |
|
35 | 56 | let counter = await find('.route-refresh-counter').textContent;
|
36 | 57 | await click('.refresh-external');
|
37 | 58 |
|
38 |
| - counter = parseInt(counter, 10); |
39 |
| - counter = ++counter; |
40 |
| - counter = counter.toString(); |
41 |
| - assert.dom('.global-refresh-counter').hasText(counter); |
| 59 | + if (macroCondition(dependencySatisfies('ember-source', '>= 4.1.0'))) { |
| 60 | + counter = parseInt(counter, 10); |
| 61 | + counter = ++counter; |
| 62 | + counter = counter.toString(); |
| 63 | + assert.dom('.global-refresh-counter').hasText(counter); |
| 64 | + } else { |
| 65 | + // eslint-disable-next-line qunit/no-conditional-assertions |
| 66 | + assert.throws( |
| 67 | + 'Refresh method is not available in ember-source below v4.1' |
| 68 | + ); |
| 69 | + } |
42 | 70 | });
|
43 | 71 | });
|
0 commit comments