@@ -25,7 +25,7 @@ describe('state', function () {
2525 E = { params : [ 'i' ] } ,
2626 H = { data : { propA : 'propA' , propB : 'propB' } } ,
2727 HH = { parent : H } ,
28- HHH = { parent : HH , data : { propA : 'overriddenA' , propC : 'propC' } }
28+ HHH = { parent : HH , data : { propA : 'overriddenA' , propC : 'propC' } } ,
2929 AppInjectable = { } ;
3030
3131 beforeEach ( module ( function ( $stateProvider , $provide ) {
@@ -87,7 +87,6 @@ describe('state', function () {
8787 expect ( $state . current ) . toBe ( state ) ;
8888 }
8989
90-
9190 describe ( '.transitionTo()' , function ( ) {
9291 it ( 'returns a promise for the target state' , inject ( function ( $state , $q ) {
9392 var trans = $state . transitionTo ( A , { } ) ;
@@ -716,3 +715,38 @@ describe('state', function () {
716715
717716 } ) ;
718717} ) ;
718+
719+ describe ( 'state queue' , function ( ) {
720+ angular . module ( 'ui.router.queue.test' , [ 'ui.router.queue.test.dependency' ] )
721+ . config ( function ( $stateProvider ) {
722+ $stateProvider
723+ . state ( 'queue-test-a' , { } )
724+ . state ( 'queue-test-b-child' , { parent : 'queue-test-b' } )
725+ . state ( 'queue-test-b' , { } ) ;
726+ } ) ;
727+ angular . module ( 'ui.router.queue.test.dependency' , [ ] )
728+ . config ( function ( $stateProvider ) {
729+ $stateProvider
730+ . state ( 'queue-test-a.child' , { } )
731+ } ) ;
732+
733+ var expectedStates = [ '' , 'queue-test-a' , 'queue-test-a.child' , 'queue-test-b' , 'queue-test-b-child' ] ;
734+
735+ it ( 'should work across modules' , function ( ) {
736+ module ( 'ui.router.queue.test' , 'ui.router.queue.test.dependency' ) ;
737+
738+ inject ( function ( $state ) {
739+ var list = $state . get ( ) . sort ( function ( a , b ) { return ( a . name > b . name ) - ( b . name > a . name ) ; } ) ;
740+ expect ( list . map ( function ( state ) { return state . name ; } ) ) . toEqual ( expectedStates ) ;
741+ } ) ;
742+ } ) ;
743+
744+ it ( 'should work when parent is name string' , function ( ) {
745+ module ( 'ui.router.queue.test' , 'ui.router.queue.test.dependency' ) ;
746+
747+ inject ( function ( $state ) {
748+ var list = $state . get ( ) . sort ( function ( a , b ) { return ( a . name > b . name ) - ( b . name > a . name ) ; } ) ;
749+ expect ( list . map ( function ( state ) { return state . name ; } ) ) . toEqual ( expectedStates ) ;
750+ } ) ;
751+ } ) ;
752+ } ) ;
0 commit comments