public void DependencyResolverAdder_AddWithNullTestKitBaseAndActorFactory_ThrowsArgumentNullException() { //arrange DependencyResolverAdder sut = CreateDependencyResolverAdder(); //act Action act = () => sut.Add(null, null); //assert act.Should().Throw <ArgumentNullException>(); }
public void DependencyResolverAdder_AddWithNullTestKitBase_ThrowsArgumentNullException() { //arrange DependencyResolverAdder sut = CreateDependencyResolverAdder(); //act Action act = () => sut.Add(null, type => new BlackHoleActor()); //assert act.Should().Throw <ArgumentNullException>(); }
public void DependencyResolverAdder_Add_FactoryIsGivenCorrectType() { //arrange DependencyResolverAdder sut = CreateDependencyResolverAdder(); //act sut.Add(this, ActorFactory); //assert ActorOfAsTestActorRef <ActorBase>(Sys.DI().Props <DummyActor>()); TypeGivenToFactory.Should().Be <DummyActor>(); }
public void DependencyResolverAdder_Add_ResultOfFactoryIsUsedToCreateActors() { //arrange DependencyResolverAdder sut = CreateDependencyResolverAdder(); //act sut.Add(this, ActorFactory); //assert TestActorRef <ActorBase> result = ActorOfAsTestActorRef <ActorBase>(Sys.DI().Props <ActorBase>()); result.UnderlyingActor.Should().BeSameAs(ReturnedActor); }
public void DependencyResolverAdder_Add_LatestFactoryIsUsed() { //arrange DependencyResolverAdder sut = CreateDependencyResolverAdder(); foreach (int _ in TestHelper.GenerateMany(TestHelper.GenerateNumber)) { sut.Add(this, type => new Mock <ActorBase>().Object); } //act sut.Add(this, ActorFactory); //assert TestActorRef <ActorBase> result = ActorOfAsTestActorRef <ActorBase>(Sys.DI().Props <DummyActor>()); result.UnderlyingActor.Should().BeSameAs(ReturnedActor); }
public void DependencyResolverAdder_Add_FactoryIsGivenCorrectType() { //arrange DependencyResolverAdder sut = CreateDependencyResolverAdder(); DummyActor actor = new DummyActor(); Type actual = null; //act sut.Add(this, type => { actual = type; return(actor); }); //assert ActorOfAsTestActorRef <ActorBase>(Sys.DI().Props <DummyActor>()); actual.Should().Be <DummyActor>(); }
public TestBase() : base(AkkaConfig.Config) { // Create shims _shimContext = ShimsContext.Create(); // Set up shims ShimDependencyResolverAdder.Constructor = @this => { DependencyResolverAdderConstructorCount++; ConstructedDependencyResolverAdder = @this; }; ShimConcreteDependencyResolverAdder.ConstructorIDependencyResolverAdder = (@this, dependencyResolverAdder) => { ConcreteDependencyResolverAdderConstructorCount++; ConstructedConcreteDependencyResolverAdder = @this; DependencyResolverAdderPassedIntoShim = dependencyResolverAdder; }; }
public void DependencyResolverAdder_Add_LatestFactoryIsUsed() { //arrange DependencyResolverAdder sut = CreateDependencyResolverAdder(); List <DummyActor> actors = TestUtils.CreateMany <DummyActor>(); foreach (DummyActor actor in actors.Take(actors.Count)) { sut.Add(this, type => actor); } DummyActor expected = new DummyActor(); //act sut.Add(this, type => expected); //assert TestActorRef <ActorBase> result = ActorOfAsTestActorRef <ActorBase>(Sys.DI().Props <DummyActor>()); result.UnderlyingActor.Should().BeSameAs(expected); }
public TestBase() : base(AkkaConfig.Config) { // Create values passed into sut TestKitPassedIntoSut = this; HandlersPassedIntoSut = ImmutableDictionary <(Type, Type), Func <object, object> > .Empty .Add((typeof(DummyActor1), typeof(Message1)), message1 => new Reply1()) .Add((typeof(DummyActor1), typeof(Message2)), message1 => new Reply2()) .Add((typeof(DummyActor2), typeof(Message1)), message1 => new Reply1()); PropsPassedIntoSut = Props.Create <DummyActor1>(); NumberOfChildrenIntoSut = TestUtils.Create <int>(); // Create shims _shimContext = ShimsContext.Create(); // Set up shims ShimSutCreator.Constructor = @this => { SutCreatorConstructorCount++; ConstructedSutCreator = @this; }; ShimTellChildWaiter.Constructor = @this => { TellChildWaiterConstructorCount++; ConstructedTellChildWaiter = @this; }; ShimChildWaiter.Constructor = @this => { ChildWaiterConstructorCount++; ConstructedChildWaiter = @this; }; ShimDependencyResolverAdder.Constructor = @this => { DependencyResolverAdderConstructorCount++; ConstructedDependencyResolverAdder = @this; }; ShimTestProbeDependencyResolverAdder.Constructor = @this => { TestProbeDependencyResolverAdderConstructorCount++; ConstructedTestProbeDependencyResolverAdder = @this; }; ShimTestProbeCreator.Constructor = @this => { TestProbeCreatorConstructorCount++; ConstructedTestProbeCreator = @this; }; ShimResolvedTestProbeStore.Constructor = @this => { ResolvedTestProbeStoreConstructorCount++; ConstructedResolvedTestProbeStore = @this; }; ShimTestProbeActorCreator.Constructor = @this => { TestProbeActorCreatorConstructorCount++; ConstructedTestProbeActorCreator = @this; }; ShimTestProbeHandlersMapper.Constructor = @this => { TestProbeHandlersMapperConstructorCount++; ConstructedTestProbeHandlersMapper = @this; }; ShimSutSupervisorStrategyGetter.Constructor = @this => { SutSupervisorStrategyGetterConstructorCount++; ConstructedSutSupervisorStrategyGetter = @this; }; ShimUnitTestFramework <DummyActor1> .ConstructorISutCreatorITellChildWaiterIChildWaiterIDependencyResolverAdderITestProbeDependencyResolverAdderITestProbeCreatorIResolvedTestProbeStoreITestProbeActorCreatorITestProbeHandlersMapperISutSupervisorStrategyGetterImmutableDictionaryOfValueTupleOfTy = (@this, sutCreator, tellChildWaiter, childWaiter, dependencyResolverAdder, testProbeDependencyResolverAdder, testProbeCreator, resolvedTestProbeStore, testProbeActorCreator, testProbeHandlersMapper, sutSupervisorStrategyGetter, handlers, testKit, props, numberOfChildren) => { UnitTestFrameworkConstructorCount++; ConstructedUnitTestFramework = @this; SutCreatorPassedIntoShim = sutCreator; TellChildWaiterPassedIntoShim = tellChildWaiter; ChildWaiterPassedIntoShim = childWaiter; DependencyResolverAdderPassedIntoShim = dependencyResolverAdder; TestProbeDependencyResolverAdderPassedIntoShim = testProbeDependencyResolverAdder; TestProbeCreatorPassedIntoShim = testProbeCreator; ResolvedTestProbeStorePassedIntoShim = resolvedTestProbeStore; TestProbeActorCreatorPassedIntoShim = testProbeActorCreator; TestProbeHandlersMapperPassedIntoShim = testProbeHandlersMapper; SutSupervisorStrategyGetterIntoShim = sutSupervisorStrategyGetter; HandlersPassedIntoShim = handlers; TestKitPassedIntoShim = testKit; PropsPassedIntoShim = props; NumberOfChildrenIntoShim = numberOfChildren; }; }