Skip to content
This repository was archived by the owner on Nov 1, 2017. It is now read-only.

Commit d46789b

Browse files
committed
add a test for a nested block
1 parent 681fec7 commit d46789b

File tree

1 file changed

+83
-6
lines changed

1 file changed

+83
-6
lines changed

test/unit/test_blockquoted_updates.coffee

Lines changed: 83 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
module "Blockquoted TaskList updates",
44
setup: ->
5-
@blockquote = $ '<blockquote>'
6-
75
@container = $ '<div>', class: 'js-task-list-container'
6+
7+
@blockquote = $ '<blockquote>'
88

99
@list = $ '<ul>', class: 'task-list'
1010

@@ -21,20 +21,56 @@ module "Blockquoted TaskList updates",
2121
class: 'task-list-item-checkbox'
2222
disabled: true
2323
checked: false
24+
25+
@innerBlockquote = $ '<blockquote>'
26+
27+
@innerList = $ '<ul>', class: 'task-list'
28+
29+
@innerCompleteItem = $ '<li>', class: 'task-list-item'
30+
@innerCompleteCheckbox = $ '<input>',
31+
type: 'checkbox'
32+
class: 'task-list-item-checkbox'
33+
disabled: true
34+
checked: true
35+
36+
@innerIncompleteItem = $ '<li>', class: 'task-list-item'
37+
@innerIncompleteCheckbox = $ '<input>',
38+
type: 'checkbox'
39+
class: 'task-list-item-checkbox'
40+
disabled: true
41+
checked: false
2442

2543
@field = $ '<textarea>', class: 'js-task-list-field', text: """
2644
> - [x] complete
2745
> - [ ] incomplete
46+
> > - [x] inner complete
47+
> > - [ ] inner incomplete
2848
"""
2949

3050
@changes =
3151
toComplete: """
3252
> - [ ] complete
3353
> - [ ] incomplete
54+
> > - [x] inner complete
55+
> > - [ ] inner incomplete
3456
"""
3557
toIncomplete: """
3658
> - [x] complete
3759
> - [x] incomplete
60+
> > - [x] inner complete
61+
> > - [ ] inner incomplete
62+
"""
63+
toInnerComplete: """
64+
> - [x] complete
65+
> - [ ] incomplete
66+
> > - [ ] inner complete
67+
> > - [ ] inner incomplete
68+
"""
69+
toInnerIncomplete: """
70+
> - [x] complete
71+
> - [ ] incomplete
72+
> > - [x] inner complete
73+
> > - [x] inner incomplete
3874
"""
3975

4076
@completeItem.append @completeCheckbox
@@ -45,12 +81,25 @@ module "Blockquoted TaskList updates",
4581
@list.append @incompleteItem
4682
@incompleteItem.expectedIndex = 2
4783

48-
@container.append @list
49-
@container.append @field
84+
@blockquote.append @list
85+
@blockquote.append @field
86+
87+
@innerCompleteItem.append @innerCompleteCheckbox
88+
@innerList.append @innerCompleteItem
89+
@innerCompleteItem.expectedIndex = 3
90+
91+
@innerIncompleteItem.append @innerIncompleteCheckbox
92+
@innerList.append @innerIncompleteItem
93+
@innerIncompleteItem.expectedIndex = 4
5094

51-
@blockquote.append @container
95+
@innerBlockquote.append @innerList
96+
@innerBlockquote.append @innerField
97+
98+
@blockquote.append @innerBlockquote
99+
100+
@container.append @blockquote
52101

53-
$('#qunit-fixture').append(@blockquote)
102+
$('#qunit-fixture').append(@container)
54103
@container.taskList()
55104

56105
teardown: ->
@@ -83,3 +132,31 @@ asyncTest "updates the source, marking the complete item as incomplete", ->
83132
, 20
84133

85134
@completeCheckbox.click()
135+
136+
asyncTest "updates the source of a quoted quoted item, marking the incomplete item as complete", ->
137+
expect 3
138+
139+
@field.on 'tasklist:changed', (event, index, checked) =>
140+
ok checked
141+
equal index, @innerIncompleteItem.expectedIndex
142+
equal @field.val(), @changes.toInnerIncomplete
143+
144+
setTimeout ->
145+
start()
146+
, 20
147+
148+
@innerIncompleteCheckbox.click()
149+
150+
asyncTest "updates the source of a quoted quoted item, marking the complete item as incomplete", ->
151+
expect 3
152+
153+
@field.on 'tasklist:changed', (event, index, checked) =>
154+
ok !checked
155+
equal index, @innerCompleteItem.expectedIndex
156+
equal @field.val(), @changes.toInnerComplete
157+
158+
setTimeout ->
159+
start()
160+
, 20
161+
162+
@innerCompleteCheckbox.click()

0 commit comments

Comments
 (0)