@@ -5,38 +5,62 @@ import {
5
5
click ,
6
6
findAll ,
7
7
find ,
8
+ currentURL ,
8
9
settled
9
10
} from '@ember/test-helpers' ;
10
11
import { selectSearch } from 'ember-power-select/test-support' ;
11
12
import { timeout } from 'ember-concurrency' ;
12
13
14
+ async function waitForSettled ( ) {
15
+ await settled ( ) ;
16
+ await timeout ( 10 ) ;
17
+ await settled ( ) ;
18
+ }
19
+
20
+ async function ensureVersionsExist ( assert ) {
21
+ await waitForSettled ( ) ;
22
+ await selectSearch ( '.select-container' , '2' ) ;
23
+ await settled ( ) ;
24
+
25
+ assert . dom ( '.ember-power-select-options' ) . exists ( { count : 1 } ) ;
26
+ assert . ok ( findAll ( '.ember-power-select-options' ) [ 0 ] . children . length > 1 ) ;
27
+ }
28
+
13
29
module ( 'Acceptance | Switch Project' , function ( hooks ) {
14
30
setupApplicationTest ( hooks ) ;
15
31
16
32
test ( 'Can switch projects back and forth' , async function ( assert ) {
17
- async function ensureVersionsExist ( ) {
18
- await settled ( ) ;
19
- await timeout ( 10 ) ;
20
- await settled ( ) ;
21
- await selectSearch ( '.select-container' , '2' ) ;
22
- await settled ( ) ;
23
-
24
- assert . dom ( '.ember-power-select-options' ) . exists ( { count : 1 } ) ;
25
- assert . ok ( findAll ( '.ember-power-select-options' ) [ 0 ] . children . length > 1 ) ;
26
- }
27
33
28
34
await visit ( '/' ) ;
29
35
30
36
await click ( '.spec-ember-data' ) ;
31
- await ensureVersionsExist ( ) ;
37
+ await ensureVersionsExist ( assert ) ;
32
38
assert . dom ( find ( '.spec-ember-data' ) ) . hasClass ( 'active' ) ;
33
39
34
40
await click ( '.spec-ember' ) ;
35
- await ensureVersionsExist ( ) ;
41
+ await ensureVersionsExist ( assert ) ;
36
42
assert . dom ( find ( '.spec-ember' ) ) . hasClass ( 'active' ) ;
37
43
38
44
await click ( '.spec-ember-data' ) ;
39
- await ensureVersionsExist ( ) ;
45
+ await ensureVersionsExist ( assert ) ;
40
46
assert . dom ( find ( '.spec-ember-data' ) ) . hasClass ( 'active' ) ;
41
47
} ) ;
48
+
49
+ test ( 'Can open class after switching projects back and forth' , async function ( assert ) {
50
+ await visit ( '/' ) ;
51
+ await ensureVersionsExist ( assert ) ;
52
+ assert . dom ( find ( '.spec-ember' ) ) . hasClass ( 'active' ) ;
53
+
54
+ await click ( '.spec-ember-data' ) ;
55
+ await ensureVersionsExist ( assert ) ;
56
+ assert . dom ( find ( '.spec-ember-data' ) ) . hasClass ( 'active' ) ;
57
+
58
+ await click ( '.spec-ember' ) ;
59
+ await ensureVersionsExist ( assert ) ;
60
+ assert . dom ( find ( '.spec-ember' ) ) . hasClass ( 'active' ) ;
61
+
62
+ await click ( '[data-test-class=EmberObject] > a' ) ;
63
+ await waitForSettled ( ) ;
64
+ assert . equal ( currentURL ( ) , '/ember/release/classes/EmberObject' ) ;
65
+ } ) ;
42
66
} ) ;
0 commit comments