@@ -24,6 +24,7 @@ describe('state', function () {
24
24
DD = { parent : D , params : { x : null , y : null , z : null } } ,
25
25
DDDD = { parent : D , controller : function ( ) { } , template : "hey" } ,
26
26
E = { params : { i : { } } } ,
27
+ F = { params : { a : '' , b : false , c : 0 , d : undefined , e : - 1 } } ,
27
28
H = { data : { propA : 'propA' , propB : 'propB' } } ,
28
29
HH = { parent : H } ,
29
30
HHH = { parent : HH , data : { propA : 'overriddenA' , propC : 'propC' } } ,
@@ -47,6 +48,7 @@ describe('state', function () {
47
48
. state ( 'DD' , DD )
48
49
. state ( 'DDDD' , DDDD )
49
50
. state ( 'E' , E )
51
+ . state ( 'F' , F )
50
52
. state ( 'H' , H )
51
53
. state ( 'HH' , HH )
52
54
. state ( 'HHH' , HHH )
@@ -915,6 +917,7 @@ describe('state', function () {
915
917
'DD' ,
916
918
'DDDD' ,
917
919
'E' ,
920
+ 'F' ,
918
921
'H' ,
919
922
'HH' ,
920
923
'HHH' ,
@@ -982,6 +985,12 @@ describe('state', function () {
982
985
expect ( $state . params ) . toEqual ( { x : null , y : null } ) ;
983
986
} ) ) ;
984
987
988
+ it ( "should allow falsy default values for non-url params" , inject ( function ( $state , $q ) {
989
+ $state . go ( "F" ) ; $q . flush ( ) ;
990
+ expect ( $state . current . name ) . toBe ( "F" ) ;
991
+ expect ( $state . params ) . toEqual ( { a : '' , b : false , c : 0 , d : undefined , e : - 1 } ) ;
992
+ } ) ) ;
993
+
985
994
it ( "should allow arbitrary objects to pass for non-url params" , inject ( function ( $state , $q ) {
986
995
$state . go ( "D" , { x : 100 , y : { foo : 'bar' } } ) ; $q . flush ( ) ;
987
996
expect ( $state . current . name ) . toBe ( "D" ) ;
0 commit comments