@@ -599,15 +599,6 @@ export function main() {
599599 expect ( childInj . get ( 'injectable2' ) ) . toEqual ( 'injectable1-injectable2' ) ;
600600 } ) ;
601601
602- it ( "should instantiate components that depends on viewInjector dependencies" , function ( ) {
603- var inj = injector (
604- [ DirectiveBinding . createFromType (
605- NeedsService ,
606- new dirAnn . Component ( { viewInjector : [ bind ( 'service' ) . toValue ( 'service' ) ] } ) ) ] ,
607- null , true ) ;
608- expect ( inj . get ( NeedsService ) . service ) . toEqual ( 'service' ) ;
609- } ) ;
610-
611602 it ( "should instantiate hostInjector injectables that have dependencies" , ( ) => {
612603 var inj = injector ( ListWrapper . concat (
613604 [ DirectiveBinding . createFromType ( SimpleDirective , new dirAnn . Directive ( {
@@ -624,7 +615,7 @@ export function main() {
624615 expect ( inj . get ( 'injectable2' ) ) . toEqual ( 'injectable1-injectable2' ) ;
625616 } ) ;
626617
627- it ( "should instantiate components that depends on viewInjector dependencies" , function ( ) {
618+ it ( "should instantiate components that depends on viewInjector dependencies" , ( ) => {
628619 var inj = injector (
629620 ListWrapper . concat ( [ DirectiveBinding . createFromType ( NeedsService , new dirAnn . Component ( {
630621 viewInjector : [ bind ( 'service' ) . toValue ( 'service' ) ]
@@ -634,6 +625,16 @@ export function main() {
634625 expect ( inj . get ( NeedsService ) . service ) . toEqual ( 'service' ) ;
635626 } ) ;
636627
628+ it ( "should prioritize hostInjector over viewInjector for the same binding" , ( ) => {
629+ var inj = injector (
630+ ListWrapper . concat ( [ DirectiveBinding . createFromType ( NeedsService , new dirAnn . Component ( {
631+ hostInjector : [ bind ( 'service' ) . toValue ( 'hostService' ) ] ,
632+ viewInjector : [ bind ( 'service' ) . toValue ( 'viewService' ) ] } )
633+ ) ] , extraBindings ) , null , true ) ;
634+ expect ( inj . get ( NeedsService ) . service ) . toEqual ( 'hostService' ) ;
635+ } ) ;
636+
637+
637638 it ( "should instantiate directives that depend on app services" , ( ) => {
638639 var appInjector = Injector . resolveAndCreate (
639640 ListWrapper . concat ( [ bind ( "service" ) . toValue ( "service" ) ] , extraBindings ) ) ;
0 commit comments