public void Given_SomeGame_With_Player2_When_Player2_Select_A_Case_Then_The_Case_Is_Marked_By_O_And_Player1_Could_Play() { using (var consoleHooker = new TestsHelpers.ConsoleHooker()) { // Arrange string expectedPlayer = "Vince"; string Player2 = "kavin"; string expectedGrid = "XO2OOXX78"; var stubGameViewFactory = Substitute.For <IGameViewFactory>(); var moq = Substitute.For <IGameView>(); stubGameViewFactory.Create(Arg.Any <IUICommandChannel>()).Returns(moq); var sutBuilder = new CompositionRootBuilder() .WithPlayer1(expectedPlayer) .WithPlayer2(Player2) .WithPlayer2AsCurrentPlayer() .WithGrid(new bool?[, ] { { true, false, true }, { null, false, null }, { null, true, null } }) .WithGameViewFactory(stubGameViewFactory); var sut = sutBuilder.Create(); // Act sut.ApplyPlayerSelection(Player2, 1, 0); // Assert moq.Received().Render(new GameDto(expectedGrid, expectedPlayer)); } }
public void KeyedServicesAreIgnored() { using var container = new CompositionRootBuilder() .RegisterModule <ModuleWithKeyedServices>() .Build(); Assert.Empty(container.GetRegisteredTypes()); }
public void ThrowsOnComponentNotRegistered() { using var container = new CompositionRootBuilder() .RegisterModule(new FooModule()) .Build(); Assert.NotNull(container.Resolve <IFoo>()); Assert.Throws <ComponentNotRegisteredException>(() => container.Resolve <IBar>()); }
public void CreateCompositionRootWithRegisteredModules() { using var container = new CompositionRootBuilder() .RegisterModule(new FooModule()) .RegisterModule <BarModule>() .Build(); Assert.NotNull(container.Resolve <IFoo>()); Assert.NotNull(container.Resolve <IBar>()); }
public void ReturnsAllRegisteredTypes() { var expectedTypes = new[] { typeof(IFoo), typeof(CreateFoo), }; using var container = new CompositionRootBuilder() .RegisterModule <FooModule>() .Build(); Assert.Equal(expectedTypes.OrderByFullTypeName(), container.GetRegisteredTypes().OrderByFullTypeName()); }
public void Given_NewGame_With_Player1_When_Game_Starts_Then_EmptyGrid_Is_Rendered_For_Player1() { using (var consoleHooker = new TestsHelpers.ConsoleHooker()) { // Arrange string expectedPlayer = "Player1"; string expectedGrid = "012345678"; var stubGameViewFactory = Substitute.For <IGameViewFactory>(); var sutBuilder = new CompositionRootBuilder().WithPlayer1(expectedPlayer).WithGameViewFactory(stubGameViewFactory); var moq = Substitute.For <IGameView>(); stubGameViewFactory.Create(Arg.Any <IUICommandChannel>()).Returns(moq); var sut = sutBuilder.Create(); // Act sut.Start(); // Assert moq.Received().Render(new GameDto(expectedGrid, expectedPlayer)); } }
public void CompositionRootBuilds() { using var container = new CompositionRootBuilder().Build(); Assert.NotNull(container); }