         assert siblings.length is 2, "Two siblings"
         assert.deepEqual siblings.get().map((el) -> el.className), ['a', 'c']
 
+    test 'parent', ->
+        el = $('.a').parent()
+        assert el.length is 1, "One element found"
+        assert el.get(0).className is 'list', "Parent is .list"
+
+    test 'parents', ->
+        els = $('.a').parents()
+
+        assert.isTrue els.is('ul'), "Ul element found"
+        assert.isTrue els.is('body'), "Body always found"
+
     test 'closest', ->
         el = $('.a')
         closest = el.closest('ul')
         assert.lengthOf closest, 1
         assert.equal closest.get(0).className, 'list'
+
+        el = $('.a')
+        closest = el.closest('.a')
+        assert.lengthOf closest, 1
+        assert.equal closest.get(0).className, 'a'
 
         closest = el.closest('section#test')
         assert.lengthOf closest, 1

    test 'multiple results', ->
        el = $('#test li')
        assert.lengthOf el, 3, "It has 3 elements"
        

suite 'Traversal methods', ->

    test 'add multiple (Rye)', ->
        list = list_items()

        assert list3.length is 3, "Length didn't change"
        assert.deepEqual list3.pluck('className'), ['a', 'b', 'c'], "Classes match"

    test 'pluck node', ->
        list = list_items()
        first = $(list.get(0))
        second = $(first.pluckNode('nextSibling'))
        assert.equal second.get(0), list.get(1), "Walks to second element"

    test 'pluck', ->
        obj = $()
        obj.elements[0] = fizz: 'buzz'
        obj._update()
        assert.deepEqual obj.pluck('fizz'), ['buzz'], "Plucks elements properties"

    test 'next', ->
        el = $('.a').next()
        assert el.length is 1, "One element found"
