public ObservationController <Class> create_main_controller <Class, Engine>() where Class : class where Engine : IFakeEngine, new() { IManageFakes fakes_accessor = this.fakes_gateway_factory.create <Class, Engine>(); IMarshalNonGenericFakeResolutionToAGenericResolution fakes_resolver = this.fakes_adapter_factory.create(fakes_accessor); ICreateAndManageDependenciesFor <Class> sut_factory = this.sut_factory_provider.create <Class>(fakes_resolver, fakes_accessor); return(new DefaultObservationController <Class, Engine>(fakes_accessor, test_state_factory.create_for(sut_factory), sut_factory)); }
public DefaultSUTFactory(IDictionary <Type, object> specific_constructor_arguments, IMarshalNonGenericFakeResolutionToAGenericResolution fake_resolver, IManageFakes fake_gateway) { this.actual_factory = new CreateSUT <SUT>(this.create_manually); this.specific_constructor_arguments = specific_constructor_arguments; this.fake_gateway = fake_gateway; this.fake_resolver = fake_resolver; }
public ICreateAndManageDependenciesFor <SUT> create <SUT>(IMarshalNonGenericFakeResolutionToAGenericResolution fake_resolution, IManageFakes manage_fakes) { return(new DefaultSUTFactory <SUT>(new Dictionary <Type, object>(), fake_resolution, manage_fakes)); }