public void Play(Shake firstPlayerShake, Shake secondPlayerShake) { // first player if (firstPlayerShake.Equals(Shake.Paper)) { _console.ReadLine().Returns("p"); } else if (firstPlayerShake.Equals(Shake.Rock)) { _console.ReadLine().Returns("r"); } else { _console.ReadLine().Returns("s"); } // second player if (secondPlayerShake.Equals(Shake.Paper)) { _generator.GenerateHandShake().Returns(Shake.Paper); } else if (secondPlayerShake.Equals(Shake.Rock)) { _generator.GenerateHandShake().Returns(Shake.Rock); } else { _generator.GenerateHandShake().Returns(Shake.Scissors); } // Play! Referee.PlayNewGame(); }