hunk.code_window:       }
       }
     });
     return this._make(filter ? select(filter, elems) : elems);
   };
   var siblings = exports.siblings = function(selector) {
     var parent = this.parent();
  
hunk.labels: keep keep keep keep replace keep keep keep keep keep
hunk.after_edit:   return filterSelector ?
       filter.call(elems, filterSelector, this) :
       this._make(elems);
  
hunk.file_path: lib/api/traversing.js
hunk.type: replace
file: var expect = require('expect.js'),
      $ = require('../'),
      food = require('./fixtures').food;
  
  describe('utility methods', function() {
  
    describe('.contains', function() {
  
      it('(container, contained) : should correctly detect the provided element', function() {
        var $food = $(food);
        var $fruits = $food.find('#fruits');
        var $apple = $fruits.find('.apple');
  
        expect($.contains($food[0], $fruits[0])).to.equal(true);
        expect($.contains($food[0], $apple[0])).to.equal(true);
      });
  
      it('(container, other) : should not detect elements that are not contained', function() {
        var $food = $(food);
        var $fruits = $food.find('#fruits');
        var $vegetables = $food.find('#vegetables');
        var $apple = $fruits.find('.apple');
  
        expect($.contains($vegetables[0], $apple[0])).to.equal(false);
        expect($.contains($fruits[0], $vegetables[0])).to.equal(false);
        expect($.contains($vegetables[0], $fruits[0])).to.equal(false);
        expect($.contains($fruits[0], $fruits[0])).to.equal(false);
        expect($.contains($vegetables[0], $vegetables[0])).to.equal(false);
      });
  
    });
  
  });
  