Skip to content

Commit 75bc59e

Browse files
Di PengIgorMinar
authored andcommitted
test:ng#class: added a better unit test for ng:class
1 parent 6aee293 commit 75bc59e

1 file changed

Lines changed: 30 additions & 6 deletions

File tree

test/directivesSpec.js

Lines changed: 30 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -175,14 +175,38 @@ describe("directive", function(){
175175
});
176176
});
177177

178-
it('should ng:class', function(){
179-
var scope = compile('<div class="existing" ng:class="[\'A\', \'B\']"></div>');
180-
scope.$eval();
181-
expect(element.hasClass('existing')).toBeTruthy();
182-
expect(element.hasClass('A')).toBeTruthy();
183-
expect(element.hasClass('B')).toBeTruthy();
178+
179+
describe('ng:class', function() {
180+
it('should add new and remove old classes dynamically', function() {
181+
var scope = compile('<div class="existing" ng:class="dynClass"></div>');
182+
scope.dynClass = 'A';
183+
scope.$eval();
184+
expect(element.hasClass('existing')).toBe(true);
185+
expect(element.hasClass('A')).toBe(true);
186+
187+
scope.dynClass = 'B';
188+
scope.$eval();
189+
expect(element.hasClass('existing')).toBe(true);
190+
expect(element.hasClass('A')).toBe(false);
191+
expect(element.hasClass('B')).toBe(true);
192+
193+
delete scope.dynClass;
194+
scope.$eval();
195+
expect(element.hasClass('existing')).toBe(true);
196+
expect(element.hasClass('A')).toBe(false);
197+
expect(element.hasClass('B')).toBe(false);
198+
});
199+
200+
it('should support adding multiple classes', function(){
201+
var scope = compile('<div class="existing" ng:class="[\'A\', \'B\']"></div>');
202+
scope.$eval();
203+
expect(element.hasClass('existing')).toBeTruthy();
204+
expect(element.hasClass('A')).toBeTruthy();
205+
expect(element.hasClass('B')).toBeTruthy();
206+
});
184207
});
185208

209+
186210
it('should ng:class odd/even', function(){
187211
var scope = compile('<ul><li ng:repeat="i in [0,1]" class="existing" ng:class-odd="\'odd\'" ng:class-even="\'even\'"></li><ul>');
188212
scope.$eval();

0 commit comments

Comments
 (0)