aboutsummaryrefslogtreecommitdiffstats
path: root/test/jqLiteSpec.js
diff options
context:
space:
mode:
authorIgor Minar2011-03-31 01:17:34 -0700
committerIgor Minar2011-03-31 01:17:34 -0700
commit56c00800c78d3d896fa6cb97ab97b974805152c4 (patch)
tree9eea63f150ad3b67527c6ae3805883912c4ba1ac /test/jqLiteSpec.js
parent15ec78f5eff3f8fa74714fe10986be094915c800 (diff)
downloadangular.js-56c00800c78d3d896fa6cb97ab97b974805152c4.tar.bz2
fix jqLite#parent to be compatible with jQuery
our original implementation doesn't work with document fragments on IE - tests were added to cover missing cases
Diffstat (limited to 'test/jqLiteSpec.js')
-rw-r--r--test/jqLiteSpec.js19
1 files changed, 19 insertions, 0 deletions
diff --git a/test/jqLiteSpec.js b/test/jqLiteSpec.js
index 346017f1..2fc670ce 100644
--- a/test/jqLiteSpec.js
+++ b/test/jqLiteSpec.js
@@ -323,11 +323,30 @@ describe('jqLite', function(){
});
});
describe('parent', function(){
+ it('should return parent or an empty set when no parent', function(){
+ var parent = jqLite('<div><p>abc</p></div>'),
+ child = parent.find('p');
+
+ expect(parent.parent()).toBeTruthy();
+ expect(parent.parent().length).toEqual(0);
+
+ expect(child.parent().length).toBe(1);
+ expect(child.parent()[0]).toBe(parent[0]);
+ });
it('should return empty set when no parent', function(){
var element = jqLite('<div>abc</div>');
expect(element.parent()).toBeTruthy();
expect(element.parent().length).toEqual(0);
});
+ it('should return empty jqLite object when parent is a document fragment', function() {
+ //this is quite unfortunate but jQuery 1.5.1 behaves this way
+ var fragment = document.createDocumentFragment(),
+ child = jqLite('<p>foo</p>');
+
+ fragment.appendChild(child[0]);
+ expect(child[0].parentNode).toBe(fragment);
+ expect(child.parent().length).toBe(0);
+ });
});
describe('next', function(){
it('should return next sibling', function(){