X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Flib%2FTestAppCustomContainer%2FNoSugarContainer.pm;h=e1439d6d13b8f11854eaf2f13ed8842cadfd8ac7;hb=1b9a4c17043fd97193d8718d1f2f155f0b3ac6c5;hp=dc319713f08d7645183c79d8830ffcec0219278f;hpb=a5f37ed617de951c53b88723fb64f0ee3278a7db;p=catagits%2FCatalyst-Runtime.git diff --git a/t/lib/TestAppCustomContainer/NoSugarContainer.pm b/t/lib/TestAppCustomContainer/NoSugarContainer.pm index dc31971..e1439d6 100644 --- a/t/lib/TestAppCustomContainer/NoSugarContainer.pm +++ b/t/lib/TestAppCustomContainer/NoSugarContainer.pm @@ -8,7 +8,6 @@ extends 'Catalyst::IOC::Container'; sub BUILD { my $self = shift; - warn("Add SingletonLifeCycle to model"); $self->get_sub_container('model')->add_service( Catalyst::IOC::ConstructorInjection->new( name => 'SingletonLifeCycle', @@ -17,25 +16,36 @@ sub BUILD { catalyst_component_name => 'TestAppCustomContainer::Model::SingletonLifeCycle', dependencies => { application_name => depends_on( '/application_name' ), - foo => depends_on('/model/DefaultSetup'), }, ) ); $self->get_sub_container('model')->add_service( - # FIXME - i think it should be a ConstructorInjection - # but only BlockInjection gets ctx parameter Catalyst::IOC::ConstructorInjection->new( - name => 'Baz', + name => 'RequestLifeCycle', lifecycle => '+Catalyst::IOC::LifeCycle::Request', - class => 'TestAppCustomContainer::Model::Baz', + class => 'TestAppCustomContainer::Model::RequestLifeCycle', + catalyst_component_name => 'TestAppCustomContainer::Model::RequestLifeCycle', dependencies => { application_name => depends_on( '/application_name' ), - foo => depends_on('/model/DefaultSetup'), }, ) ); +# $self->get_sub_container('model')->add_service( +# Catalyst::IOC::ConstructorInjection->new( +# name => 'DependsOnDefaultSetup', +# class => 'TestAppCustomContainer::Model::DependsOnDefaultSetup', +# catalyst_component_name => 'TestAppCustomContainer::Model::DependsOnDefaultSetup', +# dependencies => { +# application_name => depends_on( '/application_name' ), +# # FIXME - this is what is blowing up everything: +# # DefaultSetup needs the context. It's not getting it here! +# foo => depends_on('/model/DefaultSetup'), +# }, +# ) +# ); + # Broken deps!?! # $self->get_sub_container('model')->add_service( # Catalyst::IOC::BlockInjection->new( @@ -48,29 +58,29 @@ sub BUILD { # ) # ); - my $fnar_config = $self->resolve(service => 'config')->{'Model::Fnar'} || {}; - $self->get_sub_container('component')->add_service( - Catalyst::IOC::ConstructorInjection->new( - name => 'model_Fnar', - lifecycle => 'Singleton', - class => 'TestAppCustomContainer::External::Class', - dependencies => [ - depends_on( '/application_name' ), - ], - config => $fnar_config, - ) - ); - $self->get_sub_container('model')->add_service( - Catalyst::IOC::BlockInjection->new( - name => 'model_Fnar', - lifecycle => 'Singleton', - dependencies => [ - depends_on( '/config' ), - depends_on( '/component/model_Fnar' ), - ], - block => sub { shift->param('model_Fnar') }, - ) - ); +# my $fnar_config = $self->resolve(service => 'config')->{'Model::Fnar'} || {}; +# $self->get_sub_container('component')->add_service( +# Catalyst::IOC::ConstructorInjection->new( +# name => 'model_Fnar', +# lifecycle => 'Singleton', +# class => 'TestAppCustomContainer::External::Class', +# dependencies => [ +# depends_on( '/application_name' ), +# ], +# config => $fnar_config, +# ) +# ); +# $self->get_sub_container('model')->add_service( +# Catalyst::IOC::BlockInjection->new( +# name => 'model_Fnar', +# lifecycle => 'Singleton', +# dependencies => [ +# depends_on( '/config' ), +# depends_on( '/component/model_Fnar' ), +# ], +# block => sub { shift->param('model_Fnar') }, +# ) +# ); } __PACKAGE__->meta->make_immutable;