@@ -213,28 +213,83 @@ describe('UNIT: ViewModel', function () {
213213
214214 } )
215215
216- describe ( '.$appendTo' , function ( ) {
217- it ( 'should pass' , function ( ) {
218- assert . ok ( false )
216+ describe ( 'DOM methods' , function ( ) {
217+
218+ var enterCalled ,
219+ leaveCalled
220+
221+ var v = new Vue ( {
222+ attributes : {
223+ 'v-transition' : 'test'
224+ } ,
225+ transitions : {
226+ test : {
227+ enter : function ( el , change ) {
228+ enterCalled = true
229+ change ( )
230+ } ,
231+ leave : function ( el , change ) {
232+ leaveCalled = true
233+ change ( )
234+ }
235+ }
236+ }
219237 } )
220- } )
221238
222- describe ( '.$before' , function ( ) {
223- it ( 'should pass' , function ( ) {
224- assert . ok ( false )
239+ function reset ( ) {
240+ enterCalled = false
241+ leaveCalled = false
242+ }
243+
244+ it ( '$appendTo' , function ( ) {
245+ reset ( )
246+ var parent = document . createElement ( 'div' )
247+ v . $appendTo ( parent )
248+ assert . strictEqual ( v . $el . parentNode , parent )
249+ assert . ok ( enterCalled )
225250 } )
226- } )
227251
228- describe ( '.$after' , function ( ) {
229- it ( 'should pass' , function ( ) {
230- assert . ok ( false )
252+ it ( '$before' , function ( ) {
253+ reset ( )
254+ var parent = document . createElement ( 'div' ) ,
255+ ref = document . createElement ( 'div' )
256+ parent . appendChild ( ref )
257+ v . $before ( ref )
258+ assert . strictEqual ( v . $el . parentNode , parent )
259+ assert . strictEqual ( v . $el . nextSibling , ref )
260+ assert . ok ( enterCalled )
231261 } )
232- } )
233262
234- describe ( '.$remove' , function ( ) {
235- it ( 'should pass' , function ( ) {
236- assert . ok ( false )
263+ it ( '$after' , function ( ) {
264+ reset ( )
265+ var parent = document . createElement ( 'div' ) ,
266+ ref1 = document . createElement ( 'div' ) ,
267+ ref2 = document . createElement ( 'div' )
268+ parent . appendChild ( ref1 )
269+ parent . appendChild ( ref2 )
270+ v . $after ( ref1 )
271+ assert . strictEqual ( v . $el . parentNode , parent )
272+ assert . strictEqual ( v . $el . nextSibling , ref2 )
273+ assert . strictEqual ( ref1 . nextSibling , v . $el )
274+ assert . ok ( enterCalled )
275+ reset ( )
276+ v . $after ( ref2 )
277+ assert . strictEqual ( v . $el . parentNode , parent )
278+ assert . notOk ( v . $el . nextSibling )
279+ assert . strictEqual ( ref2 . nextSibling , v . $el )
280+ assert . ok ( enterCalled )
237281 } )
282+
283+ it ( '$remove' , function ( ) {
284+ reset ( )
285+ var parent = document . createElement ( 'div' )
286+ v . $appendTo ( parent )
287+ v . $remove ( )
288+ assert . notOk ( v . $el . parentNode )
289+ assert . ok ( enterCalled )
290+ assert . ok ( leaveCalled )
291+ } )
292+
238293 } )
239294
240295 describe ( '.$destroy' , function ( ) {
0 commit comments