From 6fb4bf4c543b3e48375221a9c5f1791af31a3ffc Mon Sep 17 00:00:00 2001
From: Di Peng
Date: Tue, 9 Aug 2011 18:24:56 -0700
Subject: fix(directives): make ng:class-even/odd work with ng:class
Closes #508
---
test/directivesSpec.js | 44 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)
(limited to 'test/directivesSpec.js')
diff --git a/test/directivesSpec.js b/test/directivesSpec.js
index 22d3c84b..afb4e04f 100644
--- a/test/directivesSpec.js
+++ b/test/directivesSpec.js
@@ -220,6 +220,50 @@ describe("directive", function(){
expect(e2.hasClass('even')).toBeTruthy();
});
+
+ it('should allow both ng:class and ng:class-odd/even on the same element', function() {
+ var scope = compile('
' +
+ '' +
+ '');
+ scope.$eval();
+ var e1 = jqLite(element[0].childNodes[1]);
+ var e2 = jqLite(element[0].childNodes[2]);
+
+ expect(e1.hasClass('plainClass')).toBeTruthy();
+ expect(e1.hasClass('odd')).toBeTruthy();
+ expect(e1.hasClass('even')).toBeFalsy();
+ expect(e2.hasClass('plainClass')).toBeTruthy();
+ expect(e2.hasClass('even')).toBeTruthy();
+ expect(e2.hasClass('odd')).toBeFalsy();
+ });
+
+
+ it('should allow both ng:class and ng:class-odd/even with multiple classes', function() {
+ var scope = compile('' +
+ '' +
+ '');
+ scope.$eval();
+ var e1 = jqLite(element[0].childNodes[1]);
+ var e2 = jqLite(element[0].childNodes[2]);
+
+ expect(e1.hasClass('A')).toBeTruthy();
+ expect(e1.hasClass('B')).toBeTruthy();
+ expect(e1.hasClass('C')).toBeTruthy();
+ expect(e1.hasClass('D')).toBeTruthy();
+ expect(e1.hasClass('E')).toBeFalsy();
+ expect(e1.hasClass('F')).toBeFalsy();
+
+ expect(e2.hasClass('A')).toBeTruthy();
+ expect(e2.hasClass('B')).toBeTruthy();
+ expect(e2.hasClass('E')).toBeTruthy();
+ expect(e2.hasClass('F')).toBeTruthy();
+ expect(e2.hasClass('C')).toBeFalsy();
+ expect(e2.hasClass('D')).toBeFalsy();
+ });
+
+
describe('ng:style', function(){
it('should set', function(){
var scope = compile('');
--
cgit v1.2.3