public void BasicResolverSettings_RegisterResolverWithDuplicateFuncFactories_AddsConcreteDependancyResolverWithCorrectFactories() { //arrange DummyActor1 actor1 = new DummyActor1(); DummyActor1 duplicateActor1 = new DummyActor1(); DummyActor2 actor2 = new DummyActor2(); BasicResolverSettings sut = BasicResolverSettings .Empty .RegisterActor(() => actor1) .RegisterActor(() => actor2) .RegisterActor(() => duplicateActor1); //act sut.RegisterResolver(this); //assert HandlersPassedIntoMock.ShouldAllBeEquivalentTo( ImmutableDictionary <Type, Func <ActorBase> > .Empty .Add(typeof(DummyActor1), () => duplicateActor1) .Add(typeof(DummyActor2), () => actor2), options => options .Using <Func <ActorBase> >(context => context.Subject.Invoke().Should().BeSameAs(context.Expectation.Invoke())) .WhenTypeIs <Func <ActorBase> >()); }
public void BasicResolverSettings_RegisterResolverWithNoFactories_AddsConcreteDependancyResolverWithEmptyFactories() { //arrange BasicResolverSettings sut = BasicResolverSettings.Empty; //act sut.RegisterResolver(this); //assert HandlersPassedIntoMock.Should().BeEmpty(); }
public void BasicResolverSettings_RegisterResolverWithFactoriesInDifferentInstances_AddsConcreteDependancyResolverWithCorrectFactories() { //arrange BasicResolverSettings sut = BasicResolverSettings .Empty .RegisterActor <DummyActor1>(); BasicResolverSettings differentInstance = sut .RegisterActor <DummyActor2>(); //act sut.RegisterResolver(this); //assert HandlersPassedIntoMock.ShouldAllBeEquivalentTo( ImmutableDictionary <Type, Func <ActorBase> > .Empty .Add(typeof(DummyActor1), () => new DummyActor1()), options => options .Using <Func <ActorBase> >(context => context.Subject.Invoke().GetType().Should().Be(context.Expectation.Invoke().GetType())) .WhenTypeIs <Func <ActorBase> >()); }