1 | require './setup'
|
2 |
|
3 | describe 'Text block', ->
|
4 | it 'ignore when no example', ->
|
5 | @load '''
|
6 | ### Example
|
7 | hello
|
8 |
|
9 | hi
|
10 |
|
11 | world
|
12 | '''
|
13 |
|
14 | expect(@$).not.have.selectors [
|
15 | '.sg-block > .sg-text'
|
16 | '.sg-block > .sg-text + .sg-example'
|
17 | ]
|
18 |
|
19 | it 'should work', ->
|
20 | @load '''
|
21 | ### Example
|
22 | hello
|
23 |
|
24 | hi
|
25 |
|
26 | world
|
27 |
|
28 | @example
|
29 | div x
|
30 | '''
|
31 |
|
32 | expect(@$).have.selectors [
|
33 | '.sg-block'
|
34 | '.sg-block > .sg-text'
|
35 | '.sg-block > .sg-text > h3#example'
|
36 | '.sg-block > .sg-text > p'
|
37 | '.sg-block > .sg-text > p+p+p'
|
38 | '.sg-block > .sg-text + .sg-example'
|
39 | ]
|
40 |
|
41 | it 'leave inlines alone', ->
|
42 | @load '''
|
43 | ### Example
|
44 |
|
45 | `a` - foo *b* **c**
|
46 |
|
47 | @example
|
48 | div x
|
49 | '''
|
50 |
|
51 | expect(@$).have.selectors [
|
52 | '.sg-block'
|
53 | '.sg-block > .sg-text'
|
54 | '.sg-block > .sg-text > h3#example'
|
55 | '.sg-block > .sg-text > p'
|
56 | '.sg-block > .sg-text > p > code'
|
57 | '.sg-block > .sg-text > p > strong'
|
58 | '.sg-block > .sg-text > p > em'
|
59 | '.sg-block > .sg-text + .sg-example'
|
60 | ]
|
61 |
|
62 | it 'account for code', ->
|
63 | @load '''
|
64 | ### Example
|
65 | hello
|
66 |
|
67 | hi
|
68 |
|
69 | world
|
70 |
|
71 | ``` javascript
|
72 | alert('ok')
|
73 | ```
|
74 | '''
|
75 |
|
76 | expect(@$).have.selectors [
|
77 | '.sg-block'
|
78 | '.sg-block > .sg-text'
|
79 | '.sg-block > .sg-text > h3#example'
|
80 | '.sg-block > .sg-text > p'
|
81 | '.sg-block > .sg-text > p+p+p'
|
82 | '.sg-block > .sg-text + pre.sg-code'
|
83 | ]
|
84 |
|