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

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

Issue 256553002: Revert "Update all Angular libs (run update_all.sh)." (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 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_model_validators_spec.dart
diff --git a/third_party/pkg/angular/test/directive/ng_model_validators_spec.dart b/third_party/pkg/angular/test/directive/ng_model_validators_spec.dart
index 3aa9d54ee9ac2d07a6fb80737ad8065cd32cf9e5..d42e5fb5c21310f7451cf49ae8635121a2c582df 100644
--- a/third_party/pkg/angular/test/directive/ng_model_validators_spec.dart
+++ b/third_party/pkg/angular/test/directive/ng_model_validators_spec.dart
@@ -2,631 +2,351 @@ library ng_model_validators;
import '../_specs.dart';
-void main() {
- they(should, tokens, callback, [exclusive=false]) {
- tokens.forEach((token) {
- describe(token, () {
- (exclusive ? iit : it)(should, () => callback(token));
- });
- });
- }
+main() =>
+describe('ngModel validators', () {
+ TestBed _;
- tthey(should, tokens, callback) =>
- they(should, tokens, callback, true);
+ beforeEach(inject((TestBed tb) => _ = tb));
- describe('ngModel validators', () {
- TestBed _;
+ describe('required', () {
+ it('should validate the input field if the required attribute is set', inject((RootScope scope) {
+ _.compile('<input type="text" ng-model="val" probe="i" required />');
+ Probe probe = _.rootScope.context['i'];
+ var model = probe.directive(NgModel);
- beforeEach((TestBed tb) => _ = tb);
+ model.validate();
+ expect(model.valid).toEqual(false);
+ expect(model.invalid).toEqual(true);
- describe('required', () {
- it('should validate the input field if the required attribute is set', (RootScope scope) {
- _.compile('<input type="text" ng-model="val" probe="i" required />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
+ _.rootScope.context['val'] = 'value';
+ model.validate();
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
+ }));
- _.rootScope.apply(() {
- _.rootScope.context['val'] = 'value';
- });
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
- });
+ it('should validate a number input field if the required attribute is set', inject((RootScope scope) {
+ _.compile('<input type="number" ng-model="val" probe="i" required="true" />');
+ Probe probe = _.rootScope.context['i'];
+ var model = probe.directive(NgModel);
+ model.validate();
+ expect(model.valid).toEqual(false);
+ expect(model.invalid).toEqual(true);
- it('should validate a number input field if the required attribute is set', (RootScope scope) {
- _.compile('<input type="number" ng-model="val" probe="i" required="true" />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
+ _.rootScope.context['val'] = 5;
+ model.validate();
- _.rootScope.apply();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
+ }));
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
- _.rootScope.apply(() {
- _.rootScope.context['val'] = 5;
- });
+ it('should validate the input field depending on if ng-required is true', inject((RootScope scope) {
+ _.compile('<input type="text" ng-model="val" probe="i" ng-required="requireMe" />');
+ Probe probe = _.rootScope.context['i'];
+ var model = probe.directive(NgModel);
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
- });
+ _.rootScope.apply();
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
- it('should validate the input field depending on if ng-required is true', (RootScope scope) {
- _.compile('<input type="text" ng-model="val" probe="i" ng-required="requireMe" />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
+ _.rootScope.apply(() {
+ _.rootScope.context['requireMe'] = true;
+ });
- _.rootScope.apply();
+ model.validate();
+ expect(model.valid).toEqual(false);
+ expect(model.invalid).toEqual(true);
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
+ _.rootScope.apply(() {
+ _.rootScope.context['requireMe'] = false;
+ });
- _.rootScope.apply(() {
- _.rootScope.context['requireMe'] = true;
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
+ }));
+ });
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
+ describe('[type="url"]', () {
+ it('should validate the input field given a valid or invalid URL', inject((RootScope scope) {
+ _.compile('<input type="url" ng-model="val" probe="i" />');
+ Probe probe = _.rootScope.context['i'];
+ var model = probe.directive(NgModel);
- _.rootScope.apply(() {
- _.rootScope.context['requireMe'] = false;
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = 'googledotcom';
});
- });
- describe('[type="url"]', () {
- it('should validate the input field given a valid or invalid URL', (RootScope scope) {
- _.compile('<input type="url" ng-model="val" probe="i" />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
+ model.validate();
+ expect(model.valid).toEqual(false);
+ expect(model.invalid).toEqual(true);
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = 'http://www.google.com';
+ });
- _.rootScope.apply(() {
- _.rootScope.context['val'] = 'googledotcom';
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
+ }));
+ });
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
+ describe('[type="email"]', () {
+ it('should validate the input field given a valid or invalid email address', inject((RootScope scope) {
+ _.compile('<input type="email" ng-model="val" probe="i" />');
+ Probe probe = _.rootScope.context['i'];
+ var model = probe.directive(NgModel);
- _.rootScope.apply(() {
- _.rootScope.context['val'] = 'http://www.google.com';
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = 'matiasatemail.com';
});
- });
- describe('[type="email"]', () {
- it('should validate the input field given a valid or invalid email address', (RootScope scope) {
- _.compile('<input type="email" ng-model="val" probe="i" />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
+ model.validate();
+ expect(model.valid).toEqual(false);
+ expect(model.invalid).toEqual(true);
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = 'matias@gmail.com';
+ });
- _.rootScope.apply(() {
- _.rootScope.context['val'] = 'matiasatemail.com';
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
+ }));
+ });
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
+ describe('[type="number"]', () {
+ it('should validate the input field given a valid or invalid number', inject((RootScope scope) {
+ _.compile('<input type="number" ng-model="val" probe="i" />');
+ Probe probe = _.rootScope.context['i'];
+ var model = probe.directive(NgModel);
- _.rootScope.apply(() {
- _.rootScope.context['val'] = 'matias@gmail.com';
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = '11';
});
- });
-
- describe('[type="number|range"]', () {
- they('should validate the input field given a valid or invalid number',
- ['range', 'number'],
- (type) {
- _.compile('<input type="$type" ng-model="val" probe="i" />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
- _.rootScope.apply(() {
- _.rootScope.context['val'] = '11';
- });
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = 10;
+ });
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = 'twelve';
+ });
- _.rootScope.apply(() {
- _.rootScope.context['val'] = 10;
- });
+ model.validate();
+ expect(model.valid).toEqual(false);
+ expect(model.invalid).toEqual(true);
+ }));
+ });
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
+ describe('pattern', () {
+ it('should validate the input field if a ng-pattern attribute is provided', inject((RootScope scope) {
+ _.compile('<input type="text" ng-pattern="myPattern" ng-model="val" probe="i" />');
+ Probe probe = _.rootScope.context['i'];
+ var model = probe.directive(NgModel);
- _.rootScope.apply(() {
- _.rootScope.context['val'] = 'twelve';
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = "abc";
+ _.rootScope.context['myPattern'] = "[a-z]+";
});
- they('should perform a max number validation if a max attribute value is present',
- ['range', 'number'],
- (type) {
-
- _.compile('<input type="$type" ng-model="val" max="10" probe="i" />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "8";
- });
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
- expect(model.hasErrorState('ng-max')).toBe(false);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "99";
- });
-
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
- expect(model.hasErrorState('ng-max')).toBe(true);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "a";
- });
-
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
- expect(model.hasErrorState('ng-max')).toBe(false);
- expect(model.hasErrorState('ng-number')).toBe(true);
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
- they('should perform a max number validation if a ng-max attribute value is present and/or changed',
- ['range', 'number'],
- (type) {
-
- _.compile('<input type="$type" ng-model="val" ng-max="maxVal" probe="i" />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
-
- //should be valid even when no number is present
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
- expect(model.hasErrorState('ng-max')).toBe(false);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "20";
- });
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
- expect(model.hasErrorState('ng-max')).toBe(false);
-
- _.rootScope.apply(() {
- _.rootScope.context['maxVal'] = "19";
- });
-
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
- expect(model.hasErrorState('ng-max')).toBe(true);
-
- _.rootScope.apply(() {
- _.rootScope.context['maxVal'] = "22";
- });
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
- expect(model.hasErrorState('ng-max')).toBe(false);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = "abc";
+ _.rootScope.context['myPattern'] = "[0-9]+";
});
- they('should perform a min number validation if a min attribute value is present',
- ['range', 'number'],
- (type) {
-
- _.compile('<input type="$type" ng-model="val" min="-10" probe="i" />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "8";
- });
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
- expect(model.hasErrorState('ng-min')).toBe(false);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "-20";
- });
-
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
- expect(model.hasErrorState('ng-min')).toBe(true);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "x";
- });
-
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
- expect(model.hasErrorState('ng-min')).toBe(false);
- expect(model.hasErrorState('ng-number')).toBe(true);
- });
+ model.validate();
+ expect(model.valid).toEqual(false);
+ expect(model.invalid).toEqual(true);
- they('should perform a min number validation if a ng-min attribute value is present and/or changed',
- ['range', 'number'],
- (type) {
-
- _.compile('<input type="$type" ng-model="val" ng-min="minVal" probe="i" />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
-
- //should be valid even when no number is present
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
- expect(model.hasErrorState('ng-min')).toBe(false);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "5";
- });
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
- expect(model.hasErrorState('ng-min')).toBe(false);
-
- _.rootScope.apply(() {
- _.rootScope.context['minVal'] = "5.5";
- });
-
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
- expect(model.hasErrorState('ng-min')).toBe(true);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "5.6";
- });
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
- expect(model.hasErrorState('ng-min')).toBe(false);
- });
- });
-
- describe('pattern', () {
- it('should validate the input field if a ng-pattern attribute is provided', (RootScope scope) {
- _.compile('<input type="text" ng-pattern="myPattern" ng-model="val" probe="i" />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "abc";
- _.rootScope.context['myPattern'] = "[a-z]+";
- });
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "abc";
- _.rootScope.context['myPattern'] = "[0-9]+";
- });
-
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "123";
- _.rootScope.context['myPattern'] = "123";
- });
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = "123";
+ _.rootScope.context['myPattern'] = "123";
});
- it('should validate the input field if a pattern attribute is provided', (RootScope scope) {
- _.compile('<input type="text" pattern="[0-5]+" ng-model="val" probe="i" />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
+ }));
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "abc";
- });
+ it('should validate the input field if a pattern attribute is provided', inject((RootScope scope) {
+ _.compile('<input type="text" pattern="[0-5]+" ng-model="val" probe="i" />');
+ Probe probe = _.rootScope.context['i'];
+ var model = probe.directive(NgModel);
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "012345";
- });
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "6789";
- });
-
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = "abc";
});
- });
-
- describe('minlength', () {
- it('should validate the input field if a minlength attribute is provided', (RootScope scope) {
- _.compile('<input type="text" minlength="5" ng-model="val" probe="i" />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "abc";
- });
+ model.validate();
+ expect(model.valid).toEqual(false);
+ expect(model.invalid).toEqual(true);
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "abcdef";
- });
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = "012345";
});
- it('should validate the input field if a ng-minlength attribute is provided', (RootScope scope) {
- _.compile('<input type="text" ng-minlength="len" ng-model="val" probe="i" />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "abcdef";
- _.rootScope.context['len'] = 3;
- });
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "abc";
- _.rootScope.context['len'] = 5;
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = "6789";
});
- });
- describe('maxlength', () {
- it('should validate the input field if a maxlength attribute is provided', (RootScope scope) {
- _.compile('<input type="text" maxlength="5" ng-model="val" probe="i" />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "abcdef";
- });
+ model.validate();
+ expect(model.valid).toEqual(false);
+ expect(model.invalid).toEqual(true);
+ }));
+ });
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
+ describe('minlength', () {
+ it('should validate the input field if a minlength attribute is provided', inject((RootScope scope) {
+ _.compile('<input type="text" minlength="5" ng-model="val" probe="i" />');
+ Probe probe = _.rootScope.context['i'];
+ var model = probe.directive(NgModel);
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "abc";
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = "abc";
});
- it('should validate the input field if a ng-maxlength attribute is provided', (RootScope scope) {
- _.compile('<input type="text" ng-maxlength="len" ng-model="val" probe="i" />');
- Probe probe = _.rootScope.context['i'];
- var model = probe.directive(NgModel);
-
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "abcdef";
- _.rootScope.context['len'] = 6;
- });
+ model.validate();
+ expect(model.valid).toEqual(false);
+ expect(model.invalid).toEqual(true);
- model.validate();
- expect(model.valid).toEqual(true);
- expect(model.invalid).toEqual(false);
-
- _.rootScope.apply(() {
- _.rootScope.context['val'] = "abc";
- _.rootScope.context['len'] = 1;
- });
-
- model.validate();
- expect(model.valid).toEqual(false);
- expect(model.invalid).toEqual(true);
- });
- });
-
- describe('when toggled it should properly validate', () {
- var build, input, scope, model;
- beforeEach(() {
- scope = _.rootScope;
- build = (attr, type) {
- input = _.compile('<input type="$type" probe="p" ng-model="value" $attr="attr" />');
- model = scope.context['p'].directive(NgModel);
- };
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = "abcdef";
});
- it('ng-required', () {
- var input = build('ng-required', 'text');
- scope.apply(() {
- scope.context['attr'] = true;
- scope.context['value'] = '';
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
+ }));
- expect(model.valid).toBe(false);
+ it('should validate the input field if a ng-minlength attribute is provided', inject((RootScope scope) {
+ _.compile('<input type="text" ng-minlength="len" ng-model="val" probe="i" />');
+ Probe probe = _.rootScope.context['i'];
+ var model = probe.directive(NgModel);
- scope.apply(() {
- scope.context['attr'] = false;
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
- expect(model.valid).toBe(true);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = "abcdef";
+ _.rootScope.context['len'] = 3;
});
- it('ng-pattern', () {
- var input = build('ng-pattern', 'text');
- scope.apply(() {
- scope.context['attr'] = '^\d+\$';
- scope.context['value'] = 'abc';
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
- expect(model.valid).toBe(false);
-
- scope.apply(() {
- scope.context['attr'] = null;
- });
-
- expect(model.valid).toBe(true);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = "abc";
+ _.rootScope.context['len'] = 5;
});
- it('ng-minlength', () {
- var input = build('ng-minlength', 'text');
- scope.apply(() {
- scope.context['attr'] = '10';
- scope.context['value'] = 'abc';
- });
+ model.validate();
+ expect(model.valid).toEqual(false);
+ expect(model.invalid).toEqual(true);
+ }));
+ });
- expect(model.valid).toBe(false);
+ describe('maxlength', () {
+ it('should validate the input field if a maxlength attribute is provided', inject((RootScope scope) {
+ _.compile('<input type="text" maxlength="5" ng-model="val" probe="i" />');
+ Probe probe = _.rootScope.context['i'];
+ var model = probe.directive(NgModel);
- scope.apply(() {
- scope.context['attr'] = null;
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
- expect(model.valid).toBe(true);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = "abcdef";
});
- it('ng-minlength', () {
- var input = build('ng-maxlength', 'text');
- scope.apply(() {
- scope.context['attr'] = '3';
- scope.context['value'] = 'abcd';
- });
+ model.validate();
+ expect(model.valid).toEqual(false);
+ expect(model.invalid).toEqual(true);
- expect(model.valid).toBe(false);
-
- scope.apply(() {
- scope.context['attr'] = null;
- });
-
- expect(model.valid).toBe(true);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = "abc";
});
- it('ng-min', () {
- var input = build('ng-min', 'number');
- scope.apply(() {
- scope.context['attr'] = '5.0';
- scope.context['value'] = 3;
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
+ }));
- expect(model.valid).toBe(false);
+ it('should validate the input field if a ng-maxlength attribute is provided', inject((RootScope scope) {
+ _.compile('<input type="text" ng-maxlength="len" ng-model="val" probe="i" />');
+ Probe probe = _.rootScope.context['i'];
+ var model = probe.directive(NgModel);
- scope.apply(() {
- scope.context['attr'] = null;
- });
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
- expect(model.valid).toBe(true);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = "abcdef";
+ _.rootScope.context['len'] = 6;
});
- it('ng-max', () {
- var input = build('ng-max', 'number');
- scope.apply(() {
- scope.context['attr'] = '5.0';
- scope.context['value'] = 8;
- });
-
- expect(model.valid).toBe(false);
+ model.validate();
+ expect(model.valid).toEqual(true);
+ expect(model.invalid).toEqual(false);
- scope.apply(() {
- scope.context['attr'] = null;
- });
-
- expect(model.valid).toBe(true);
+ _.rootScope.apply(() {
+ _.rootScope.context['val'] = "abc";
+ _.rootScope.context['len'] = 1;
});
- });
+
+ model.validate();
+ expect(model.valid).toEqual(false);
+ expect(model.invalid).toEqual(true);
+ }));
});
-}
+});

Powered by Google App Engine
This is Rietveld 408576698