diff options
| author | Misko Hevery | 2010-12-01 20:29:54 -0800 | 
|---|---|---|
| committer | Misko Hevery | 2010-12-02 22:45:57 -0800 | 
| commit | 5a8ad8fe329fc09898ff43a060710265d38393be (patch) | |
| tree | 95058036d40b1dd993e2a9c4094ebd34b2751707 /test/markupSpec.js | |
| parent | 41d5938883a3d06ffe8a88a51efd8d1896f7d747 (diff) | |
| download | angular.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.js | 176 | 
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}}"))); -}; | 
