aboutsummaryrefslogtreecommitdiffstats
path: root/test/ng/interpolateSpec.js
diff options
context:
space:
mode:
authorpetrovalex2012-05-25 23:58:34 +0300
committerMisko Hevery2012-09-06 16:06:21 -0700
commit42c38b29f7dcb3327fe58e630b8e2973676989e0 (patch)
treec74fcef44a425ca188be3c9a2fb4b8b33da34b81 /test/ng/interpolateSpec.js
parentf299fd512248321b426a5ab924a329aa1b691280 (diff)
downloadangular.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.js26
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;