diff options
| author | petrovalex | 2012-05-25 23:58:34 +0300 | 
|---|---|---|
| committer | Misko Hevery | 2012-09-06 15:49:48 -0700 | 
| commit | 0d52ff0f10157aa7d93a77abc78f6a6a6c3f6e45 (patch) | |
| tree | 6b4a57e85c60420816e0cdc0094c0ca309411a96 /test/ng | |
| parent | baf52e902d92cee39d2e2060a49d9e740da7f0ec (diff) | |
| download | angular.js-0d52ff0f10157aa7d93a77abc78f6a6a6c3f6e45.tar.bz2 | |
fix($parser): string concatination with undefined model
Closes #988
Diffstat (limited to 'test/ng')
| -rw-r--r-- | test/ng/interpolateSpec.js | 26 | 
1 files changed, 26 insertions, 0 deletions
diff --git a/test/ng/interpolateSpec.js b/test/ng/interpolateSpec.js index 20214445..2f4d4645 100644 --- a/test/ng/interpolateSpec.js +++ b/test/ng/interpolateSpec.js @@ -15,6 +15,7 @@ describe('$interpolate', function() {    it('should suppress falsy objects', inject(function($interpolate) {      expect($interpolate('{{undefined}}')()).toEqual(''); +    expect($interpolate('{{undefined+undefined}}')()).toEqual('');      expect($interpolate('{{null}}')()).toEqual('');      expect($interpolate('{{a.b}}')()).toEqual('');    })); @@ -32,6 +33,31 @@ describe('$interpolate', function() {    })); +  it('should ignore undefined model', inject(function($interpolate) { +    expect($interpolate("Hello {{'World' + foo}}")()).toEqual('Hello World'); +  })); + + +  it('should ignore undefined return value', inject(function($interpolate, $rootScope) { +    $rootScope.foo = function() {return undefined}; +    expect($interpolate("Hello {{'World' + foo()}}")($rootScope)).toEqual('Hello World'); +  })); + + +  describe('provider', function() { +    beforeEach(module(function($interpolateProvider) { +      $interpolateProvider.startSymbol('--'); +      $interpolateProvider.endSymbol('--'); +    })); + +    it('should not get confused with same markers', inject(function($interpolate) { +      expect($interpolate('---').parts).toEqual(['---']); +      expect($interpolate('----')()).toEqual(''); +      expect($interpolate('--1--')()).toEqual('1'); +    })); +  }); + +    describe('parseBindings', function() {      it('should Parse Text With No Bindings', inject(function($interpolate) {        var parts = $interpolate("a").parts;  | 
