public void PlayerSetterShouldCreateHumanPlayer() { //Arrange string stringInput = "fakeValue"; Configuration.Setup(x => x.Message.firstVar_15_).Returns(stringInput); Configuration.Setup(x => x.Message.secondVar_16_).Returns(It.IsAny <string>()); Configuration.Setup(x => x.Constant.numberOfCards_1_).Returns(It.IsAny <int>()); StrategyFactory.Setup(x => x.CreateHumanStrategy()).Returns(new HumanStrategy(Configuration.Object, ConsoleReadMock.Object)); PlayerFactory.Setup(x => x.CreatePlayer(StrategyFactory.Object.CreateHumanStrategy())).Returns(new Player(Configuration.Object, StrategyFactory.Object.CreateHumanStrategy())); InputProvider.Setup(x => x.ReturnUserNameInputValue()).Returns(stringInput); StrategyFactory.Setup(x => x.CreateStrategyA()).Returns(value: new StrategyA(Configuration.Object, ConsoleReadMock.Object)); PlayerFactory.Setup(x => x.CreatePlayer(StrategyFactory.Object.CreateStrategyA())).Returns(new Player(Configuration.Object, StrategyFactory.Object.CreateStrategyA())); //Act var gameSetter = new GameSetter(Configuration.Object, InputProvider.Object, PlayerFactory.Object, StrategyFactory.Object); gameSetter.CreatePlayersFor36CardGame(); //Assert Assert.IsNotNull(gameSetter.Players[0]); Assert.IsNotNull(gameSetter.Players[1]); }