@@ -779,83 +779,69 @@ describe('Scope', function() {
779
779
780
780
describe ( '$watchGroup' , function ( ) {
781
781
var scope ;
782
- beforeEach ( inject ( function ( $rootScope ) {
782
+ var log ;
783
+
784
+ beforeEach ( inject ( function ( $rootScope , _log_ ) {
783
785
scope = $rootScope . $new ( ) ;
786
+ log = _log_ ;
784
787
} ) ) ;
785
788
786
789
787
790
it ( 'should work for a group with just a single expression' , function ( ) {
788
- var lastValues = [ 'foo' ] ;
789
- var log = '' ;
790
- var clean = scope . $watchGroup ( [ 'a' ] , function ( values , oldValues , s ) {
791
- log += values . join ( ',' ) + ';' ;
791
+ scope . $watchGroup ( [ 'a' ] , function ( values , oldValues , s ) {
792
792
expect ( s ) . toBe ( scope ) ;
793
- expect ( oldValues ) . toEqual ( lastValues ) ;
794
- lastValues = values . slice ( ) ;
793
+ log ( oldValues + ' >>> ' + values ) ;
795
794
} ) ;
796
795
797
796
scope . a = 'foo' ;
798
797
scope . $digest ( ) ;
799
- expect ( log ) . toEqual ( 'foo; ' ) ;
798
+ expect ( log ) . toEqual ( 'foo >>> foo ' ) ;
800
799
800
+ log . reset ( ) ;
801
801
scope . $digest ( ) ;
802
- expect ( log ) . toEqual ( 'foo; ' ) ;
802
+ expect ( log ) . toEqual ( '' ) ;
803
803
804
804
scope . a = 'bar' ;
805
805
scope . $digest ( ) ;
806
- expect ( log ) . toEqual ( 'foo;bar;' ) ;
807
-
808
- clean ( ) ;
809
- scope . a = 'xxx' ;
810
- scope . $digest ( ) ;
811
- expect ( log ) . toEqual ( 'foo;bar;' ) ;
806
+ expect ( log ) . toEqual ( 'foo >>> bar' ) ;
812
807
} ) ;
813
808
814
809
815
810
it ( 'should detect a change to any one expression in the group' , function ( ) {
816
- var lastValues = [ 'foo' , 'bar' ] ;
817
- var log = '' ;
818
-
819
811
scope . $watchGroup ( [ 'a' , 'b' ] , function ( values , oldValues , s ) {
820
- log += values . join ( ',' ) + ';' ;
821
812
expect ( s ) . toBe ( scope ) ;
822
- expect ( oldValues ) . toEqual ( lastValues ) ;
823
- lastValues = values . slice ( ) ;
813
+ log ( oldValues + ' >>> ' + values ) ;
824
814
} ) ;
825
815
826
816
scope . a = 'foo' ;
827
817
scope . b = 'bar' ;
828
818
scope . $digest ( ) ;
829
- expect ( log ) . toEqual ( 'foo,bar; ' ) ;
819
+ expect ( log ) . toEqual ( 'foo,bar >>> foo,bar ' ) ;
830
820
831
- log = '' ;
821
+ log . reset ( ) ;
832
822
scope . $digest ( ) ;
833
823
expect ( log ) . toEqual ( '' ) ;
834
824
835
825
scope . a = 'a' ;
836
826
scope . $digest ( ) ;
837
- expect ( log ) . toEqual ( 'a,bar; ' ) ;
827
+ expect ( log ) . toEqual ( 'foo,bar >>> a,bar' ) ;
838
828
839
- log = '' ;
829
+ log . reset ( ) ;
840
830
scope . a = 'A' ;
841
831
scope . b = 'B' ;
842
832
scope . $digest ( ) ;
843
- expect ( log ) . toEqual ( 'A,B; ' ) ;
833
+ expect ( log ) . toEqual ( 'a,bar >>> A,B' ) ;
844
834
} ) ;
845
835
846
836
847
837
it ( 'should not call watch action fn when watchGroup was deregistered' , function ( ) {
848
- var lastValues = [ 'foo' , 'bar' ] ;
849
- var log = '' ;
850
- var deregister = scope . $watchGroup ( [ 'a' , 'b' ] , function ( values , oldValues , s ) {
851
- log += values . join ( ',' ) + ';' ;
852
- expect ( s ) . toBe ( scope ) ;
853
- expect ( oldValues ) . toEqual ( lastValues ) ;
854
- lastValues = values . slice ( ) ;
838
+ var deregister = scope . $watchGroup ( [ 'a' , 'b' ] , function ( values , oldValues ) {
839
+ log ( oldValues + ' >>> ' + values ) ;
855
840
} ) ;
856
841
857
842
deregister ( ) ;
858
843
scope . a = 'xxx' ;
844
+ scope . b = 'yyy' ;
859
845
scope . $digest ( ) ;
860
846
expect ( log ) . toEqual ( '' ) ;
861
847
} ) ;
0 commit comments