aboutsummaryrefslogtreecommitdiffstats
path: root/test/markupSpec.js
diff options
context:
space:
mode:
authorMisko Hevery2010-12-01 20:29:54 -0800
committerMisko Hevery2010-12-02 22:45:57 -0800
commit5a8ad8fe329fc09898ff43a060710265d38393be (patch)
tree95058036d40b1dd993e2a9c4094ebd34b2751707 /test/markupSpec.js
parent41d5938883a3d06ffe8a88a51efd8d1896f7d747 (diff)
downloadangular.js-5a8ad8fe329fc09898ff43a060710265d38393be.tar.bz2
Closes #170. Corrected the behavior of select when options are ng:repeated
- Delete $postEval method, as it was a hack
Diffstat (limited to 'test/markupSpec.js')
-rw-r--r--test/markupSpec.js176
1 files changed, 87 insertions, 89 deletions
diff --git a/test/markupSpec.js b/test/markupSpec.js
index cb8ee23f..3234bf2f 100644
--- a/test/markupSpec.js
+++ b/test/markupSpec.js
@@ -14,8 +14,7 @@ describe("markups", function(){
});
afterEach(function(){
- if (element) element.remove();
- expect(size(jqCache)).toEqual(0);
+ dealoc(element);
});
it('should translate {{}} in text', function(){
@@ -63,92 +62,91 @@ describe("markups", function(){
compile('<a ng:href="{{url}}" rel="{{rel}}"></a>');
expect(sortedHtml(element)).toEqual('<a ng:bind-attr="{"href":"{{url}}","rel":"{{rel}}"}"></a>');
});
-});
+ it('should Parse Text With No Bindings', function(){
+ var parts = parseBindings("a");
+ assertEquals(parts.length, 1);
+ assertEquals(parts[0], "a");
+ assertTrue(!binding(parts[0]));
+ });
+
+ it('should Parse Empty Text', function(){
+ var parts = parseBindings("");
+ assertEquals(parts.length, 1);
+ assertEquals(parts[0], "");
+ assertTrue(!binding(parts[0]));
+ });
+
+ it('should Parse Inner Binding', function(){
+ var parts = parseBindings("a{{b}}C");
+ assertEquals(parts.length, 3);
+ assertEquals(parts[0], "a");
+ assertTrue(!binding(parts[0]));
+ assertEquals(parts[1], "{{b}}");
+ assertEquals(binding(parts[1]), "b");
+ assertEquals(parts[2], "C");
+ assertTrue(!binding(parts[2]));
+ });
+
+ it('should Parse Ending Binding', function(){
+ var parts = parseBindings("a{{b}}");
+ assertEquals(parts.length, 2);
+ assertEquals(parts[0], "a");
+ assertTrue(!binding(parts[0]));
+ assertEquals(parts[1], "{{b}}");
+ assertEquals(binding(parts[1]), "b");
+ });
+
+ it('should Parse Begging Binding', function(){
+ var parts = parseBindings("{{b}}c");
+ assertEquals(parts.length, 2);
+ assertEquals(parts[0], "{{b}}");
+ assertEquals(binding(parts[0]), "b");
+ assertEquals(parts[1], "c");
+ assertTrue(!binding(parts[1]));
+ });
+
+ it('should Parse Loan Binding', function(){
+ var parts = parseBindings("{{b}}");
+ assertEquals(parts.length, 1);
+ assertEquals(parts[0], "{{b}}");
+ assertEquals(binding(parts[0]), "b");
+ });
+
+ it('should Parse Two Bindings', function(){
+ var parts = parseBindings("{{b}}{{c}}");
+ assertEquals(parts.length, 2);
+ assertEquals(parts[0], "{{b}}");
+ assertEquals(binding(parts[0]), "b");
+ assertEquals(parts[1], "{{c}}");
+ assertEquals(binding(parts[1]), "c");
+ });
+
+ it('should Parse Two Bindings With Text In Middle', function(){
+ var parts = parseBindings("{{b}}x{{c}}");
+ assertEquals(parts.length, 3);
+ assertEquals(parts[0], "{{b}}");
+ assertEquals(binding(parts[0]), "b");
+ assertEquals(parts[1], "x");
+ assertTrue(!binding(parts[1]));
+ assertEquals(parts[2], "{{c}}");
+ assertEquals(binding(parts[2]), "c");
+ });
+
+ it('should Parse Multiline', function(){
+ var parts = parseBindings('"X\nY{{A\nB}}C\nD"');
+ assertTrue(!!binding('{{A\nB}}'));
+ assertEquals(parts.length, 3);
+ assertEquals(parts[0], '"X\nY');
+ assertEquals(parts[1], '{{A\nB}}');
+ assertEquals(parts[2], 'C\nD"');
+ });
+
+ it('should Has Binding', function(){
+ assertTrue(hasBindings(parseBindings("{{a}}")));
+ assertTrue(!hasBindings(parseBindings("a")));
+ assertTrue(hasBindings(parseBindings("{{b}}x{{c}}")));
+ });
+
+});
-var BindingMarkupTest = TestCase("BindingMarkupTest");
-
-BindingMarkupTest.prototype.testParseTextWithNoBindings = function(){
- var parts = parseBindings("a");
- assertEquals(parts.length, 1);
- assertEquals(parts[0], "a");
- assertTrue(!binding(parts[0]));
-};
-
-BindingMarkupTest.prototype.testParseEmptyText = function(){
- var parts = parseBindings("");
- assertEquals(parts.length, 1);
- assertEquals(parts[0], "");
- assertTrue(!binding(parts[0]));
-};
-
-BindingMarkupTest.prototype.testParseInnerBinding = function(){
- var parts = parseBindings("a{{b}}c");
- assertEquals(parts.length, 3);
- assertEquals(parts[0], "a");
- assertTrue(!binding(parts[0]));
- assertEquals(parts[1], "{{b}}");
- assertEquals(binding(parts[1]), "b");
- assertEquals(parts[2], "c");
- assertTrue(!binding(parts[2]));
-};
-
-BindingMarkupTest.prototype.testParseEndingBinding = function(){
- var parts = parseBindings("a{{b}}");
- assertEquals(parts.length, 2);
- assertEquals(parts[0], "a");
- assertTrue(!binding(parts[0]));
- assertEquals(parts[1], "{{b}}");
- assertEquals(binding(parts[1]), "b");
-};
-
-BindingMarkupTest.prototype.testParseBeggingBinding = function(){
- var parts = parseBindings("{{b}}c");
- assertEquals(parts.length, 2);
- assertEquals(parts[0], "{{b}}");
- assertEquals(binding(parts[0]), "b");
- assertEquals(parts[1], "c");
- assertTrue(!binding(parts[1]));
-};
-
-BindingMarkupTest.prototype.testParseLoanBinding = function(){
- var parts = parseBindings("{{b}}");
- assertEquals(parts.length, 1);
- assertEquals(parts[0], "{{b}}");
- assertEquals(binding(parts[0]), "b");
-};
-
-BindingMarkupTest.prototype.testParseTwoBindings = function(){
- var parts = parseBindings("{{b}}{{c}}");
- assertEquals(parts.length, 2);
- assertEquals(parts[0], "{{b}}");
- assertEquals(binding(parts[0]), "b");
- assertEquals(parts[1], "{{c}}");
- assertEquals(binding(parts[1]), "c");
-};
-
-BindingMarkupTest.prototype.testParseTwoBindingsWithTextInMiddle = function(){
- var parts = parseBindings("{{b}}x{{c}}");
- assertEquals(parts.length, 3);
- assertEquals(parts[0], "{{b}}");
- assertEquals(binding(parts[0]), "b");
- assertEquals(parts[1], "x");
- assertTrue(!binding(parts[1]));
- assertEquals(parts[2], "{{c}}");
- assertEquals(binding(parts[2]), "c");
-};
-
-BindingMarkupTest.prototype.testParseMultiline = function(){
- var parts = parseBindings('"X\nY{{A\nB}}C\nD"');
- assertTrue(!!binding('{{A\nB}}'));
- assertEquals(parts.length, 3);
- assertEquals(parts[0], '"X\nY');
- assertEquals(parts[1], '{{A\nB}}');
- assertEquals(parts[2], 'C\nD"');
-};
-
-BindingMarkupTest.prototype.testHasBinding = function(){
- assertTrue(hasBindings(parseBindings("{{a}}")));
- assertTrue(!hasBindings(parseBindings("a")));
- assertTrue(hasBindings(parseBindings("{{b}}x{{c}}")));
-};