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

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

Issue 1058283006: Update pubspecs and dependencies to get pkgbuild tests working. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 5 years, 8 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
diff --git a/third_party/pkg/angular/test/directive/ng_class_spec.dart b/third_party/pkg/angular/test/directive/ng_class_spec.dart
deleted file mode 100644
index 9d6914a46324f05348426e5c9e35b843a64dca7a..0000000000000000000000000000000000000000
--- a/third_party/pkg/angular/test/directive/ng_class_spec.dart
+++ /dev/null
@@ -1,312 +0,0 @@
-library ng_class_spec;
-
-import '../_specs.dart';
-
-main() {
- describe('ngClass', () {
- TestBed _;
-
- beforeEach(inject((TestBed tb) => _ = tb));
-
- 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();
- expect(element.classes.contains('existing')).toBe(true);
- expect(element.classes.contains('A')).toBe(true);
-
- _.rootScope.context['dynClass'] = 'B';
- _.rootScope.apply();
- 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();
- expect(element.classes.contains('existing')).toBe(true);
- expect(element.classes.contains('A')).toBe(false);
- expect(element.classes.contains('B')).toBe(false);
- });
-
-
- 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();
- 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();
- });
-
-
- it('should support adding multiple classes conditionally via a map of class names to boolean' +
- 'expressions', () {
- var element = _.compile(
- '<div class="existing" ' +
- 'ng-class="{A: conditionA, B: conditionB(), AnotB: conditionA&&!conditionB()}">' +
- '</div>');
- _.rootScope.context['conditionA'] = true;
- _.rootScope.context['conditionB'] = () { return false; };
- _.rootScope.apply();
- 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();
- expect(element.classes.contains('existing')).toBeTruthy();
- expect(element.classes.contains('A')).toBeTruthy();
- expect(element.classes.contains('B')).toBeTruthy();
- expect(element.classes.contains('AnotB')).toBeFalsy();
- });
-
-
- 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();
- expect(element.classes.contains('A')).toBeTruthy();
- expect(element.classes.contains('B')).toBeTruthy();
- _.rootScope.context['classes']['A'] = false;
- _.rootScope.apply();
- 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();
- expect(element.classes.contains('existing')).toBeTruthy();
- expect(element.classes.contains('A')).toBeTruthy();
- expect(element.classes.contains('B')).toBeTruthy();
- });
-
-
- 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();
- expect(element.classes.contains('existing')).toBe(true);
-
- // add extra class, change model and eval
- element.classes.add('newClass');
- _.rootScope.context['dynClass'] = 'B';
- _.rootScope.apply();
-
- expect(element.classes.contains('existing')).toBe(true);
- expect(element.classes.contains('B')).toBe(true);
- expect(element.classes.contains('newClass')).toBe(true);
- });
-
-
- 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();
- expect(element.classes.contains('A')).toBe(true);
-
- // add extra class, change model and eval
- element.classes.add('newClass');
- _.rootScope.context['dynClass'] = 'B';
- _.rootScope.apply();
-
- expect(element.classes.contains('B')).toBe(true);
- expect(element.classes.contains('newClass')).toBe(true);
- });
-
-
- 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();
- 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();
- 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();
- 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();
- element.classes.add('foo');
- _.rootScope.context['dynCls'] = '';
- _.rootScope.apply();
- });
-
-
- 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();
- var e1 = element.nodes[1];
- var e2 = element.nodes[2];
- expect(e1.classes.contains('existing')).toBeTruthy();
- expect(e1.classes.contains('odd')).toBeTruthy();
- expect(e2.classes.contains('existing')).toBeTruthy();
- expect(e2.classes.contains('even')).toBeTruthy();
- });
-
-
- it('should allow both ngClass and ngClassOdd/Even on the same element', () {
- var element = _.compile('<ul>' +
- '<li ng-repeat="i in [0,1]" ng-class="\'plainClass\'" ' +
- 'ng-class-odd="\'odd\'" ng-class-even="\'even\'">{{\$index}}</li>' +
- '<ul>');
- _.rootScope.apply();
- var e1 = element.nodes[1];
- var e2 = element.nodes[2];
-
- expect(e1.classes.contains('plainClass')).toBeTruthy();
- expect(e1.classes.contains('odd')).toBeTruthy();
- expect(e1.classes.contains('even')).toBeFalsy();
- expect(e2.classes.contains('plainClass')).toBeTruthy();
- expect(e2.classes.contains('even')).toBeTruthy();
- expect(e2.classes.contains('odd')).toBeFalsy();
- });
-
- it('should allow both ngClass and ngClassOdd/Even with multiple classes', () {
- var element = _.compile('<ul>' +
- '<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();
- var e1 = element.nodes[1];
- var e2 = element.nodes[2];
-
- expect(e1.classes.contains('A')).toBeTruthy();
- expect(e1.classes.contains('B')).toBeTruthy();
- expect(e1.classes.contains('C')).toBeTruthy();
- expect(e1.classes.contains('D')).toBeTruthy();
- expect(e1.classes.contains('E')).toBeFalsy();
- expect(e1.classes.contains('F')).toBeFalsy();
-
- expect(e2.classes.contains('A')).toBeTruthy();
- expect(e2.classes.contains('B')).toBeTruthy();
- expect(e2.classes.contains('E')).toBeTruthy();
- expect(e2.classes.contains('F')).toBeTruthy();
- expect(e2.classes.contains('C')).toBeFalsy();
- expect(e2.classes.contains('D')).toBeFalsy();
- });
-
-
- 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;
- });
- expect(element).toHaveClass('one');
- expect(element).toHaveClass('two'); // interpolated
- expect(element).toHaveClass('three');
- expect(element).toHaveClass('four');
-
- _.rootScope.apply(() {
- _.rootScope.context['cls'] = "too";
- });
-
- expect(element).toHaveClass('one');
- expect(element).toHaveClass('too'); // interpolated
- expect(element).toHaveClass('three');
- expect(element).toHaveClass('four'); // should still be there
- expect(element.classes.contains('two')).toBeFalsy();
-
- _.rootScope.apply(() {
- _.rootScope.context['cls'] = "to";
- });
-
- expect(element).toHaveClass('one');
- expect(element).toHaveClass('to'); // interpolated
- expect(element).toHaveClass('three');
- expect(element).toHaveClass('four'); // should still be there
- expect(element.classes.contains('two')).toBeFalsy();
- expect(element.classes.contains('too')).toBeFalsy();
- });
-
-
- 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;
- });
- var element = _.compile('<div ng-class="{foo:foo}"></div>');
- _.rootScope.apply();
- expect(element.classes.contains('foo')).toBe(false);
- });
-
-
- it('should update ngClassOdd/Even when model is changed by filtering', () {
- var element = _.compile('<ul>' +
- '<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.context['items'] = ['a','b'];
- _.rootScope.apply();
-
- var e1 = element.nodes[1];
- var e2 = element.nodes[2];
-
- expect(e1.classes.contains('odd')).toBeTruthy();
- expect(e1.classes.contains('even')).toBeFalsy();
-
- expect(e2.classes.contains('even')).toBeTruthy();
- expect(e2.classes.contains('odd')).toBeFalsy();
- });
-
-
- it('should update ngClassOdd/Even when model is changed by sorting', () {
- var element = _.compile('<ul>' +
- '<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.context['items'] = ['b','a'];
- _.rootScope.apply();
-
- var e1 = element.nodes[1];
- var e2 = element.nodes[2];
-
- expect(e1.classes.contains('odd')).toBeTruthy();
- expect(e1.classes.contains('even')).toBeFalsy();
-
- expect(e2.classes.contains('even')).toBeTruthy();
- expect(e2.classes.contains('odd')).toBeFalsy();
- });
- });
-}

Powered by Google App Engine
This is Rietveld 408576698