123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- Smalltalk createPackage: 'DOMite-Tests'!
- TestCase subclass: #DOMiteTest
- instanceVariableNames: 'fixtureDiv'
- package: 'DOMite-Tests'!
- !DOMiteTest methodsFor: 'fixture'!
- setUp
- fixtureDiv := document createElement: 'div'.
- document body appendChild: fixtureDiv.
- fixtureDiv setAttribute: 'id' to: 'fixture'.
- fixtureDiv innerHTML: 'sentinel'
- !
- tearDown
- | lastChild |
- lastChild := document body lastChild.
- self assert: lastChild equals: fixtureDiv.
- document body removeChild: lastChild
- ! !
- !DOMiteTest methodsFor: 'testing'!
- testDefaultInsertElement
- Domite new insertDomite: (Domite newElement: 'p').
- self assert: (document body innerHTML endsWith: '<p></p>').
- document body removeChild: document body lastChild
- !
- testDefaultInsertString
- Domite new insertString: 'a foo in a bar'.
- self assert: (document body innerHTML endsWith: 'a foo in a bar').
- document body removeChild: document body lastChild
- !
- testDefaultInsertStringInFragment
- Domite new insertDomite: (Domite open insertString: 'a foo in a bar'; yourself).
- self assert: (document body innerHTML endsWith: 'a foo in a bar').
- document body removeChild: document body lastChild
- !
- testInsertElement
- | d |
- d := Domite fromElement: fixtureDiv.
- d insertDomite: (Domite newElement: 'p').
- self assert: (document body innerHTML endsWith: '>sentinel<p></p></div>')
- !
- testInsertElementTwoLevel
- | d p s |
- d := Domite fromElement: fixtureDiv.
- p := Domite newElement: 'p'.
- d insertDomite: p.
- s := Domite newElement: 'span'.
- p insertDomite: s.
- s insertString: 'dom-mite'.
- self assert: (document body innerHTML endsWith: '>sentinel<p><span>dom-mite</span></p></div>')
- !
- testInsertElementTwoLevelViaFragments
- | d p s |
- d := Domite fromElement: fixtureDiv.
- p := Domite newElement: 'p'.
- d insertDomite: (Domite open insertDomite: p; yourself).
- s := Domite newElement: 'span'.
- p insertDomite: (Domite open insertDomite: s; yourself).
- s insertDomite: (Domite open insertString: 'dom-mite'; yourself).
- self assert: (document body innerHTML endsWith: '>sentinel<p><span>dom-mite</span></p></div>')
- !
- testInsertElementTwoLevelViaTwoLevelFragments
- | d p s |
- d := Domite fromElement: fixtureDiv.
- p := Domite newElement: 'p'.
- d insertDomite: (Domite open insertDomite: (Domite open insertDomite: p; yourself); yourself).
- s := Domite newElement: 'span'.
- p insertDomite: (Domite open insertDomite: (Domite open insertDomite: s; yourself); yourself).
- s insertDomite: (Domite open insertDomite: (Domite open insertString: 'dom-mite'; yourself); yourself).
- self assert: (document body innerHTML endsWith: '>sentinel<p><span>dom-mite</span></p></div>')
- !
- testInsertString
- | d |
- d := Domite fromElement: fixtureDiv.
- d insertString: 'a foo in a bar'.
- self assert: (document body innerHTML endsWith: '>sentinela foo in a bar</div>')
- !
- testInsertStringInFragment
- | d |
- d := Domite fromElement: fixtureDiv.
- d insertDomite: (Domite open insertString: 'a foo in a bar'; yourself).
- self assert: (document body innerHTML endsWith: '>sentinela foo in a bar</div>')
- !
- testMultipleInserts
- | d p s |
- d := Domite fromElement: fixtureDiv.
- p := Domite newElement: 'p'.
- d insertDomite: p.
- s := Domite newElement: 'span'.
- d insertDomite: s.
- d insertString: 'dom-mite'.
- self assert: (document body innerHTML endsWith: '>sentinel<p></p><span></span>dom-mite</div>')
- !
- testMultipleInsertsWithClear
- | d p s |
- d := Domite fromElement: fixtureDiv.
- p := Domite newElement: 'p'.
- d insertDomite: p.
- s := Domite newElement: 'span'.
- d insertDomite: s.
- d clearHere.
- d insertString: 'dom-mite'.
- d clearHere.
- d clearHere.
- self assert: (document body innerHTML endsWith: '></div>')
- !
- testMultipleInsertsWithClearInBetween
- | d p s |
- d := Domite fromElement: fixtureDiv.
- p := Domite newElement: 'p'.
- d insertDomite: p.
- s := Domite newElement: 'span'.
- d insertDomite: s.
- d clearHere.
- d insertString: 'dom-mite'.
- self assert: (document body innerHTML endsWith: '>dom-mite</div>')
- ! !
|