@@ -497,52 +497,57 @@ main() {
497
497
});
498
498
499
499
500
- xit ('should require' , () {
500
+ it ('should require' , () {
501
501
compile (
502
- '<select name="select" ng-model="selection" required ng-change="change()">' +
502
+ '<select name="select" ng-model="selection" probe="i" required ng-change="change()">' +
503
503
'<option value=""></option>' +
504
504
'<option value="c">C</option>' +
505
505
'</select>' );
506
506
507
+ var element = scope.context['i' ].element;
508
+
509
+ scope.context['log' ] = '' ;
507
510
scope.context['change' ] = () {
508
- scope.log += 'change;' ;
511
+ scope.context[ ' log' ] += 'change;' ;
509
512
};
510
513
511
514
scope.apply (() {
512
515
scope.context['log' ] = '' ;
513
516
scope.context['selection' ] = 'c' ;
514
517
});
515
518
516
- expect (scope.context['form' ]. select.$error. required ) .toEqual (false ); ;
517
- expect (element). toEqualValid ( );
518
- expect (element). toEqualPristine ( );
519
+ expect (scope.context['form' ][ ' select' ]. hasErrorState ( 'ng- required' )) .toEqual (false );
520
+ expect (scope.context[ 'form' ][ 'select' ].valid). toEqual ( true );
521
+ expect (scope.context[ 'form' ][ 'select' ].pristine). toEqual ( true );
519
522
520
523
scope.apply (() {
521
524
scope.context['selection' ] = '' ;
522
525
});
523
526
524
- expect (scope.context['form' ]. select.$error. required ) .toEqual (true ); ;
525
- expect (element). toEqualInvalid ( );
526
- expect (element). toEqualPristine ( );
527
+ expect (scope.context['form' ][ ' select' ]. hasErrorState ( 'ng- required' )) .toEqual (true );
528
+ expect (scope.context[ 'form' ][ 'select' ].invalid). toEqual ( true );
529
+ expect (scope.context[ 'form' ][ 'select' ].pristine). toEqual ( true );
527
530
expect (scope.context['log' ]).toEqual ('' );
528
531
529
- element[ 0 ] .value = 'c' ;
532
+ element.value = 'c' ;
530
533
_.triggerEvent (element, 'change' );
531
- expect (element).toEqualValid ();
532
- expect (element).toEqualDirty ();
534
+ scope.apply ();
535
+
536
+ expect (scope.context['form' ]['select' ].valid).toEqual (true );
537
+ expect (scope.context['form' ]['select' ].dirty).toEqual (true );
533
538
expect (scope.context['log' ]).toEqual ('change;' );
534
539
});
535
540
536
541
537
- xit ('should not be invalid if no require' , () {
542
+ it ('should not be invalid if no require' , () {
538
543
compile (
539
544
'<select name="select" ng-model="selection">' +
540
545
'<option value=""></option>' +
541
546
'<option value="c">C</option>' +
542
547
'</select>' );
543
548
544
- expect (element). toEqualValid ( );
545
- expect (element). toEqualPristine ( );
549
+ expect (scope.context[ 'form' ][ 'select' ].valid). toEqual ( true );
550
+ expect (scope.context[ 'form' ][ 'select' ].pristine). toEqual ( true );
546
551
});
547
552
548
553
@@ -616,32 +621,34 @@ main() {
616
621
expect (element).toEqualSelect ([['A' ], ['B' ]]);
617
622
});
618
623
619
- xit ('should require' , () {
624
+ it ('should require' , () {
620
625
compile (
621
- '<select name="select" ng-model="selection" multiple required>' +
626
+ '<select name="select" probe="i" ng-model="selection" multiple required>' +
622
627
'<option>A</option>' +
623
628
'<option>B</option>' +
624
629
'</select>' );
625
630
631
+ var element = scope.context['i' ].element;
626
632
scope.apply (() {
627
633
scope.context['selection' ] = [];
628
634
});
629
635
630
- expect (scope.context['form' ]. select.$error. required ) .toEqual (true ); ;
631
- expect (element). toEqualInvalid ( );
632
- expect (element). toEqualPristine ( );
636
+ expect (scope.context['form' ][ ' select' ]. hasErrorState ( 'ng- required' )) .toEqual (true );
637
+ expect (scope.context[ 'form' ][ 'select' ].invalid). toEqual ( true );
638
+ expect (scope.context[ 'form' ][ 'select' ].pristine). toEqual ( true );
633
639
634
640
scope.apply (() {
635
641
scope.context['selection' ] = ['A' ];
636
642
});
637
643
638
- expect (element). toEqualValid ( );
639
- expect (element). toEqualPristine ( );
644
+ expect (scope.context[ 'form' ][ 'select' ].valid). toEqual ( true );
645
+ expect (scope.context[ 'form' ][ 'select' ].pristine). toEqual ( true );
640
646
641
- element[ 0 ] .value = 'B' ;
647
+ element.value = 'B' ;
642
648
_.triggerEvent (element, 'change' );
643
- expect (element).toEqualValid ();
644
- expect (element).toEqualDirty ();
649
+
650
+ expect (scope.context['form' ]['select' ].valid).toEqual (true );
651
+ expect (scope.context['form' ]['select' ].dirty).toEqual (true );
645
652
});
646
653
});
647
654
0 commit comments