public void Lizard_Poisons_Spock() { var playerOne = new Player(PlayerNumber.PlayerOne, GestureType.Lizard); var playerTwo = new Player(PlayerNumber.PlayerTwo, GestureType.Spock); PlayerNumber outcome; var eng = new EngageComponent(); var result = eng.TryEngage(playerOne, playerTwo, out outcome); Assert.True(result); Assert.Equal(outcome, PlayerNumber.PlayerOne); }
public void Lizard_Decapitated_By_Scissors() { var playerOne = new Player(PlayerNumber.PlayerOne, GestureType.Lizard); var playerTwo = new Player(PlayerNumber.PlayerTwo, GestureType.Scissors); PlayerNumber outcome; var eng = new EngageComponent(); var result = eng.TryEngage(playerOne, playerTwo, out outcome); Assert.True(result); Assert.Equal(outcome, PlayerNumber.PlayerTwo); }
public void Not_Implemented() { var playerOne = new Player(PlayerNumber.PlayerOne, GestureType.Empty); var playerTwo = new Player(PlayerNumber.PlayerTwo, GestureType.Scissors); PlayerNumber outcome; var eng = new EngageComponent(); Assert.Throws<NotImplementedException>(delegate { eng.TryEngage(playerOne, playerTwo, out outcome); }); }
public void Tie() { var playerOne = new Player(PlayerNumber.PlayerOne, GestureType.Scissors); var playerTwo = new Player(PlayerNumber.PlayerTwo, GestureType.Scissors); PlayerNumber outcome; var eng = new EngageComponent(); var result = eng.TryEngage(playerOne, playerTwo, out outcome); Assert.False(result); }
public void Spock_Smashes_Scissors() { var playerOne = new Player(PlayerNumber.PlayerOne, GestureType.Spock); var playerTwo = new Player(PlayerNumber.PlayerTwo, GestureType.Scissors); PlayerNumber outcome; var eng = new EngageComponent(); var result = eng.TryEngage(playerOne, playerTwo, out outcome); Assert.True(result); Assert.Equal(outcome, PlayerNumber.PlayerOne); }
public void Spock_Disaproved_By_Paper() { var playerOne = new Player(PlayerNumber.PlayerOne, GestureType.Spock); var playerTwo = new Player(PlayerNumber.PlayerTwo, GestureType.Paper); PlayerNumber outcome; var eng = new EngageComponent(); var result = eng.TryEngage(playerOne, playerTwo, out outcome); Assert.True(result); Assert.Equal(outcome, PlayerNumber.PlayerTwo); }
public void Paper_Cut_By_Scissor() { var playerOne = new Player(PlayerNumber.PlayerOne, GestureType.Paper); var playerTwo = new Player(PlayerNumber.PlayerTwo, GestureType.Scissors); PlayerNumber outcome; var eng = new EngageComponent(); var result = eng.TryEngage(playerOne, playerTwo, out outcome); Assert.True(result); Assert.Equal(outcome, PlayerNumber.PlayerTwo); }