diff options
| author | petrovalex | 2012-05-25 23:58:34 +0300 |
|---|---|---|
| committer | Misko Hevery | 2012-09-06 16:06:21 -0700 |
| commit | 42c38b29f7dcb3327fe58e630b8e2973676989e0 (patch) | |
| tree | c74fcef44a425ca188be3c9a2fb4b8b33da34b81 /test/ng/interpolateSpec.js | |
| parent | f299fd512248321b426a5ab924a329aa1b691280 (diff) | |
| download | angular.js-42c38b29f7dcb3327fe58e630b8e2973676989e0.tar.bz2 | |
fix($parser): string concatination with undefined model
Closes #988
Diffstat (limited to 'test/ng/interpolateSpec.js')
| -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 a0a3e311..2877f92e 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(''); })); @@ -55,6 +56,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; |
