1
+ casper . test . begin ( 'tree' , 22 , function ( test ) {
2
+
3
+ casper
4
+ . start ( '../../examples/tree/index.html' )
5
+ . then ( function ( ) {
6
+ test . assertElementCount ( '.item' , 12 )
7
+ test . assertElementCount ( '.item > ul' , 4 )
8
+ test . assertNotVisible ( '#demo li ul' )
9
+ test . assertSelectorHasText ( '#demo li div span' , '[+]' )
10
+ } )
11
+ . thenClick ( '.bold' , function ( ) {
12
+ test . assertVisible ( '#demo ul' )
13
+ test . assertSelectorHasText ( '#demo li div span' , '[-]' )
14
+ test . assertSelectorHasText ( '#demo ul > .item:nth-child(1)' , 'hello' )
15
+ test . assertSelectorHasText ( '#demo ul > .item:nth-child(2)' , 'wat' )
16
+ test . assertSelectorHasText ( '#demo ul > .item:nth-child(3)' , 'child folder' )
17
+ test . assertSelectorHasText ( '#demo ul > .item:nth-child(3)' , '[+]' )
18
+ test . assertEval ( function ( ) {
19
+ return document . querySelector ( '#demo li ul' ) . children . length === 4
20
+ } )
21
+ } )
22
+ . thenClick ( '#demo ul .bold' , function ( ) {
23
+ test . assertVisible ( '#demo ul ul' )
24
+ test . assertSelectorHasText ( '#demo ul > .item:nth-child(3)' , '[-]' )
25
+ test . assertEval ( function ( ) {
26
+ return document . querySelector ( '#demo ul ul' ) . children . length === 5
27
+ } )
28
+ } )
29
+ . thenClick ( '.bold' , function ( ) {
30
+ test . assertNotVisible ( '#demo ul' )
31
+ test . assertSelectorHasText ( '#demo li div span' , '[+]' )
32
+ } )
33
+ . thenClick ( '.bold' , function ( ) {
34
+ test . assertVisible ( '#demo ul' )
35
+ test . assertSelectorHasText ( '#demo li div span' , '[-]' )
36
+ } )
37
+ . then ( function ( ) {
38
+ casper . mouseEvent ( 'dblclick' , '#demo ul > .item div' )
39
+ } )
40
+ . then ( function ( ) {
41
+ test . assertElementCount ( '.item' , 13 )
42
+ test . assertElementCount ( '.item > ul' , 5 )
43
+ test . assertSelectorHasText ( '#demo ul > .item:nth-child(1)' , '[-]' )
44
+ test . assertEval ( function ( ) {
45
+ var firstItem = document . querySelector ( '#demo ul > .item:nth-child(1)' )
46
+ var ul = firstItem . querySelector ( 'ul' )
47
+ return ul . children . length === 2
48
+ } )
49
+ } )
50
+ // run
51
+ . run ( function ( ) {
52
+ test . done ( )
53
+ } )
54
+
55
+ } )
0 commit comments