Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1011)

Unified Diff: third_party/pkg/angular/test/directive/ng_class_spec.dart

Issue 180843004: Revert revision 33053 (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/pkg/angular/test/directive/ng_class_spec.dart
===================================================================
--- third_party/pkg/angular/test/directive/ng_class_spec.dart (revision 33054)
+++ third_party/pkg/angular/test/directive/ng_class_spec.dart (working copy)
@@ -10,19 +10,19 @@
it('should add new and remove old classes dynamically', () {
var element = _.compile('<div class="existing" ng-class="dynClass"></div>');
- _.rootScope.context['dynClass'] = 'A';
- _.rootScope.apply();
+ _.rootScope.dynClass = 'A';
+ _.rootScope.$digest();
expect(element.classes.contains('existing')).toBe(true);
expect(element.classes.contains('A')).toBe(true);
- _.rootScope.context['dynClass'] = 'B';
- _.rootScope.apply();
+ _.rootScope.dynClass = 'B';
+ _.rootScope.$digest();
expect(element.classes.contains('existing')).toBe(true);
expect(element.classes.contains('A')).toBe(false);
expect(element.classes.contains('B')).toBe(true);
- _.rootScope.context['dynClass'] = null;
- _.rootScope.apply();
+ _.rootScope.dynClass = null;
+ _.rootScope.$digest();
expect(element.classes.contains('existing')).toBe(true);
expect(element.classes.contains('A')).toBe(false);
expect(element.classes.contains('B')).toBe(false);
@@ -30,23 +30,11 @@
it('should support adding multiple classes via an array', () {
- _.rootScope.context['a'] = 'a';
- _.rootScope.context['b'] = '';
- _.rootScope.context['c'] = null;
- var element = _.compile('<div class="existing" ng-class="[\'literalA\', a, b, c]"></div>');
- _.rootScope.apply();
+ var element = _.compile('<div class="existing" ng-class="[\'A\', \'B\']"></div>');
+ _.rootScope.$digest();
expect(element.classes.contains('existing')).toBeTruthy();
- expect(element.classes.contains('a')).toBeTruthy();
- expect(element.classes.contains('b')).toBeFalsy();
- expect(element.classes.contains('c')).toBeFalsy();
- expect(element.classes.contains('null')).toBeFalsy();
- _.rootScope.context['a'] = null;
- _.rootScope.context['b'] = 'b';
- _.rootScope.context['c'] = 'c';
- _.rootScope.apply();
- expect(element.classes.contains('a')).toBeFalsy();
- expect(element.classes.contains('b')).toBeTruthy();
- expect(element.classes.contains('c')).toBeTruthy();
+ expect(element.classes.contains('A')).toBeTruthy();
+ expect(element.classes.contains('B')).toBeTruthy();
});
@@ -56,16 +44,16 @@
'<div class="existing" ' +
'ng-class="{A: conditionA, B: conditionB(), AnotB: conditionA&&!conditionB()}">' +
'</div>');
- _.rootScope.context['conditionA'] = true;
- _.rootScope.context['conditionB'] = () { return false; };
- _.rootScope.apply();
+ _.rootScope.conditionA = true;
+ _.rootScope.conditionB = () { return false; };
+ _.rootScope.$digest();
expect(element.classes.contains('existing')).toBeTruthy();
expect(element.classes.contains('A')).toBeTruthy();
expect(element.classes.contains('B')).toBeFalsy();
expect(element.classes.contains('AnotB')).toBeTruthy();
- _.rootScope.context['conditionB'] = () { return true; };
- _.rootScope.apply();
+ _.rootScope.conditionB = () { return true; };
+ _.rootScope.$digest();
expect(element.classes.contains('existing')).toBeTruthy();
expect(element.classes.contains('A')).toBeTruthy();
expect(element.classes.contains('B')).toBeTruthy();
@@ -76,19 +64,19 @@
it('should remove classes when the referenced object is the same but its property is changed',
() {
var element = _.compile('<div ng-class="classes"></div>');
- _.rootScope.context['classes'] = { 'A': true, 'B': true };
- _.rootScope.apply();
+ _.rootScope.classes = { 'A': true, 'B': true };
+ _.rootScope.$digest();
expect(element.classes.contains('A')).toBeTruthy();
expect(element.classes.contains('B')).toBeTruthy();
- _.rootScope.context['classes']['A'] = false;
- _.rootScope.apply();
+ _.rootScope.classes['A'] = false;
+ _.rootScope.$digest();
expect(element.classes.contains('A')).toBeFalsy();
expect(element.classes.contains('B')).toBeTruthy();
});
it('should support adding multiple classes via a space delimited string', () {
var element = _.compile('<div class="existing" ng-class="\'A B\'"></div>');
- _.rootScope.apply();
+ _.rootScope.$digest();
expect(element.classes.contains('existing')).toBeTruthy();
expect(element.classes.contains('A')).toBeTruthy();
expect(element.classes.contains('B')).toBeTruthy();
@@ -97,14 +85,14 @@
it('should preserve class added post compilation with pre-existing classes', () {
var element = _.compile('<div class="existing" ng-class="dynClass"></div>');
- _.rootScope.context['dynClass'] = 'A';
- _.rootScope.apply();
+ _.rootScope.dynClass = 'A';
+ _.rootScope.$digest();
expect(element.classes.contains('existing')).toBe(true);
// add extra class, change model and eval
element.classes.add('newClass');
- _.rootScope.context['dynClass'] = 'B';
- _.rootScope.apply();
+ _.rootScope.dynClass = 'B';
+ _.rootScope.$digest();
expect(element.classes.contains('existing')).toBe(true);
expect(element.classes.contains('B')).toBe(true);
@@ -114,14 +102,14 @@
it('should preserve class added post compilation without pre-existing classes"', () {
var element = _.compile('<div ng-class="dynClass"></div>');
- _.rootScope.context['dynClass'] = 'A';
- _.rootScope.apply();
+ _.rootScope.dynClass = 'A';
+ _.rootScope.$digest();
expect(element.classes.contains('A')).toBe(true);
// add extra class, change model and eval
element.classes.add('newClass');
- _.rootScope.context['dynClass'] = 'B';
- _.rootScope.apply();
+ _.rootScope.dynClass = 'B';
+ _.rootScope.$digest();
expect(element.classes.contains('B')).toBe(true);
expect(element.classes.contains('newClass')).toBe(true);
@@ -130,45 +118,45 @@
it('should preserve other classes with similar name"', () {
var element = _.compile('<div class="ui-panel ui-selected" ng-class="dynCls"></div>');
- _.rootScope.context['dynCls'] = 'panel';
- _.rootScope.apply();
- _.rootScope.context['dynCls'] = 'foo';
- _.rootScope.apply();
+ _.rootScope.dynCls = 'panel';
+ _.rootScope.$digest();
+ _.rootScope.dynCls = 'foo';
+ _.rootScope.$digest();
expect(element.className).toEqual('ui-panel ui-selected foo');
});
it('should not add duplicate classes', () {
var element = _.compile('<div class="panel bar" ng-class="dynCls"></div>');
- _.rootScope.context['dynCls'] = 'panel';
- _.rootScope.apply();
+ _.rootScope.dynCls = 'panel';
+ _.rootScope.$digest();
expect(element.className).toEqual('panel bar');
});
it('should remove classes even if it was specified via class attribute', () {
var element = _.compile('<div class="panel bar" ng-class="dynCls"></div>');
- _.rootScope.context['dynCls'] = 'panel';
- _.rootScope.apply();
- _.rootScope.context['dynCls'] = 'window';
- _.rootScope.apply();
+ _.rootScope.dynCls = 'panel';
+ _.rootScope.$digest();
+ _.rootScope.dynCls = 'window';
+ _.rootScope.$digest();
expect(element.className).toEqual('bar window');
});
it('should remove classes even if they were added by another code', () {
var element = _.compile('<div ng-class="dynCls"></div>');
- _.rootScope.context['dynCls'] = 'foo';
- _.rootScope.apply();
+ _.rootScope.dynCls = 'foo';
+ _.rootScope.$digest();
element.classes.add('foo');
- _.rootScope.context['dynCls'] = '';
- _.rootScope.apply();
+ _.rootScope.dynCls = '';
+ _.rootScope.$digest();
});
it('should ngClass odd/even', () {
var element = _.compile('<ul><li ng-repeat="i in [0,1]" class="existing" ng-class-odd="\'odd\'" ng-class-even="\'even\'"></li><ul>');
- _.rootScope.apply();
+ _.rootScope.$digest();
var e1 = element.nodes[1];
var e2 = element.nodes[2];
expect(e1.classes.contains('existing')).toBeTruthy();
@@ -183,7 +171,7 @@
'<li ng-repeat="i in [0,1]" ng-class="\'plainClass\'" ' +
'ng-class-odd="\'odd\'" ng-class-even="\'even\'">{{\$index}}</li>' +
'<ul>');
- _.rootScope.apply();
+ _.rootScope.$digest();
var e1 = element.nodes[1];
var e2 = element.nodes[2];
@@ -200,7 +188,7 @@
'<li ng-repeat="i in [0,1]" ng-class="[\'A\', \'B\']" ' +
'ng-class-odd="[\'C\', \'D\']" ng-class-even="[\'E\', \'F\']"></li>' +
'<ul>');
- _.rootScope.apply();
+ _.rootScope.$apply();
var e1 = element.nodes[1];
var e2 = element.nodes[2];
@@ -223,17 +211,17 @@
it('should reapply ngClass when interpolated class attribute changes', () {
var element = _.compile('<div class="one {{cls}} three" ng-class="{four: four}"></div>');
- _.rootScope.apply(() {
- _.rootScope.context['cls'] = "two";
- _.rootScope.context['four'] = true;
+ _.rootScope.$apply(() {
+ _.rootScope.cls = "two";
+ _.rootScope.four = true;
});
expect(element).toHaveClass('one');
expect(element).toHaveClass('two'); // interpolated
expect(element).toHaveClass('three');
expect(element).toHaveClass('four');
- _.rootScope.apply(() {
- _.rootScope.context['cls'] = "too";
+ _.rootScope.$apply(() {
+ _.rootScope.cls = "too";
});
expect(element).toHaveClass('one');
@@ -242,8 +230,8 @@
expect(element).toHaveClass('four'); // should still be there
expect(element.classes.contains('two')).toBeFalsy();
- _.rootScope.apply(() {
- _.rootScope.context['cls'] = "to";
+ _.rootScope.$apply(() {
+ _.rootScope.cls = "to";
});
expect(element).toHaveClass('one');
@@ -256,12 +244,12 @@
it('should not mess up class value due to observing an interpolated class attribute', () {
- _.rootScope.context['foo'] = true;
- _.rootScope.watch("anything", (_0, _1) {
- _.rootScope.context['foo'] = false;
+ _.rootScope.foo = true;
+ _.rootScope.$watch("anything", () {
+ _.rootScope.foo = false;
});
var element = _.compile('<div ng-class="{foo:foo}"></div>');
- _.rootScope.apply();
+ _.rootScope.$digest();
expect(element.classes.contains('foo')).toBe(false);
});
@@ -271,11 +259,11 @@
'<li ng-repeat="i in items" ' +
'ng-class-odd="\'odd\'" ng-class-even="\'even\'"></li>' +
'<ul>');
- _.rootScope.context['items'] = ['a','b','c'];
- _.rootScope.apply();
+ _.rootScope.items = ['a','b','c'];
+ _.rootScope.$digest();
- _.rootScope.context['items'] = ['a','b'];
- _.rootScope.apply();
+ _.rootScope.items = ['a','b'];
+ _.rootScope.$digest();
var e1 = element.nodes[1];
var e2 = element.nodes[2];
@@ -293,11 +281,11 @@
'<li ng-repeat="i in items" ' +
'ng-class-odd="\'odd\'" ng-class-even="\'even\'">i</li>' +
'<ul>');
- _.rootScope.context['items'] = ['a','b'];
- _.rootScope.apply();
+ _.rootScope.items = ['a','b'];
+ _.rootScope.$digest();
- _.rootScope.context['items'] = ['b','a'];
- _.rootScope.apply();
+ _.rootScope.items = ['b','a'];
+ _.rootScope.$digest();
var e1 = element.nodes[1];
var e2 = element.nodes[2];

Powered by Google App Engine
This is Rietveld 408576698