aboutsummaryrefslogtreecommitdiffstats
path: root/test/ng/directive/ngSwitchSpec.js
diff options
context:
space:
mode:
authorLucas Galfasó2013-02-06 10:08:40 -0300
committerIgor Minar2013-02-14 19:55:05 -0800
commit0af172040e03811c59d01682968241e3df226774 (patch)
treec1779a7708686c472f598e034a8cec791296782f /test/ng/directive/ngSwitchSpec.js
parente19b04c9ec985821edf1269c628cfa261f81d631 (diff)
downloadangular.js-0af172040e03811c59d01682968241e3df226774.tar.bz2
feat(ngSwitch): support multiple matches on ngSwitchWhen and ngSwitchDefault
Closes #1074
Diffstat (limited to 'test/ng/directive/ngSwitchSpec.js')
-rw-r--r--test/ng/directive/ngSwitchSpec.js45
1 files changed, 45 insertions, 0 deletions
diff --git a/test/ng/directive/ngSwitchSpec.js b/test/ng/directive/ngSwitchSpec.js
index ee91f79d..b817386c 100644
--- a/test/ng/directive/ngSwitchSpec.js
+++ b/test/ng/directive/ngSwitchSpec.js
@@ -36,6 +36,36 @@ describe('ngSwitch', function() {
}));
+ it('should show all switch-whens that match the current value', inject(function($rootScope, $compile) {
+ element = $compile(
+ '<ul ng-switch="select">' +
+ '<li ng-switch-when="1">first:{{name}}</li>' +
+ '<li ng-switch-when="1">, first too:{{name}}</li>' +
+ '<li ng-switch-when="2">second:{{name}}</li>' +
+ '<li ng-switch-when="true">true:{{name}}</li>' +
+ '</ul>')($rootScope);
+ expect(element.html()).toEqual('<!-- ngSwitchWhen: 1 -->' +
+ '<!-- ngSwitchWhen: 1 -->' +
+ '<!-- ngSwitchWhen: 2 -->' +
+ '<!-- ngSwitchWhen: true -->');
+ $rootScope.select = 1;
+ $rootScope.$apply();
+ expect(element.text()).toEqual('first:, first too:');
+ $rootScope.name="shyam";
+ $rootScope.$apply();
+ expect(element.text()).toEqual('first:shyam, first too:shyam');
+ $rootScope.select = 2;
+ $rootScope.$apply();
+ expect(element.text()).toEqual('second:shyam');
+ $rootScope.name = 'misko';
+ $rootScope.$apply();
+ expect(element.text()).toEqual('second:misko');
+ $rootScope.select = true;
+ $rootScope.$apply();
+ expect(element.text()).toEqual('true:misko');
+ }));
+
+
it('should switch on switch-when-default', inject(function($rootScope, $compile) {
element = $compile(
'<ng:switch on="select">' +
@@ -50,6 +80,21 @@ describe('ngSwitch', function() {
}));
+ it('should show all switch-when-default', inject(function($rootScope, $compile) {
+ element = $compile(
+ '<ul ng-switch="select">' +
+ '<li ng-switch-when="1">one</li>' +
+ '<li ng-switch-default>other</li>' +
+ '<li ng-switch-default>, other too</li>' +
+ '</ul>')($rootScope);
+ $rootScope.$apply();
+ expect(element.text()).toEqual('other, other too');
+ $rootScope.select = 1;
+ $rootScope.$apply();
+ expect(element.text()).toEqual('one');
+ }));
+
+
it('should call change on switch', inject(function($rootScope, $compile) {
element = $compile(
'<ng:switch on="url" change="name=\'works\'">' +