public void CanSpecifyScope() { var container = new Container(); container.Options.DefaultScopedLifestyle = new AsyncScopedLifestyle(); container.Register <App>(Lifestyle.Scoped); container.Register <ISomeService, SomeService>(Lifestyle.Scoped); ISomeService svcBeforeRun; using (var scope = AsyncScopedLifestyle.BeginScope(container)) { svcBeforeRun = container.GetInstance <ISomeService>(); } var testOutputs = new AppRunner <App>() .UseSimpleInjector(container, runInScope: ctx => AsyncScopedLifestyle.BeginScope(container)) .RunInMem("Do", _testOutputHelper) .TestOutputs; var services = testOutputs.Get <App.Services>(); services.FromCtor.Should().BeSameAs(services.FromInterceptor); services.FromCtor.Should().NotBeSameAs(svcBeforeRun); }
public void ShouldUseModelFromDependencyResolver() { var argModel = new ArgModel { Text = "some default" }; var testOutputs = new AppRunner <App>() .UseDependencyResolver(new TestDependencyResolver { new App(), argModel }) .RunInMem("Do lala", _testOutputHelper) .TestOutputs; var resolvedArgModel = testOutputs.Get <ArgModel>(); resolvedArgModel.Should().BeSameAs(argModel); }