Advertisement
Guest User

Untitled

a guest
Apr 9th, 2016
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.43 KB | None | 0 0
  1. using System;
  2. using Moq;
  3. using NUnit.Framework;
  4. using TicTacToe.Core;
  5. using TicTacToe.Core.ExternalSystem;
  6.  
  7. namespace TicTacToe.Tests
  8. {
  9. [TestFixture]
  10. public class TicTacToeGameEngineTests
  11. {
  12. private GameEngine _gameEngine;
  13. private string[,] _board;
  14. private Mock<ICommonGameNetworkControl> _networkInterfaceMock;
  15.  
  16. [SetUp]
  17. public void SetupTest()
  18. {
  19. _networkInterfaceMock = new Mock<ICommonGameNetworkControl>();
  20. _gameEngine = new GameEngine(_networkInterfaceMock.Object);
  21. _board = new[,] { { "", "", "" }, { "", "", "" }, { "", "", "" } };
  22.  
  23. }
  24.  
  25. [Test]
  26. public void IfBoardIsEmptyThenThereIsNoWinner()
  27. {
  28. //Arrainge
  29. var expectedResult = "";
  30.  
  31. //Act
  32. var result = _gameEngine.GetWinner(_board);
  33.  
  34. //Assert
  35. Assert.AreEqual(expectedResult, result);
  36. }
  37.  
  38. [Test]
  39. public void WhenAllTheTopRowCellsHaveAnXThenXWins()
  40. {
  41. //Arrainge
  42. _board[0, 0] = "X";
  43. _board[0, 1] = "X";
  44. _board[0, 2] = "X";
  45. var expectedResult = "X";
  46.  
  47. //Act
  48. var result = _gameEngine.GetWinner(_board);
  49.  
  50. //Assert
  51. Assert.AreEqual(expectedResult, result);
  52. }
  53.  
  54. [Test]
  55. public void ShouldBeAbleToLogonWithCorrectUserNameAndPassword()
  56. {
  57. //arr
  58. var userName = "James";
  59. var password = "ILoveBacon";
  60. var expectedResult = Guid.NewGuid();
  61.  
  62. _networkInterfaceMock.Setup(x => x.Login(userName, password))
  63. .Returns(expectedResult);
  64.  
  65. //act
  66. var result = _gameEngine.Login(userName, password);
  67.  
  68. //assert
  69. Assert.AreEqual(expectedResult, result);
  70. }
  71.  
  72. [Test]
  73. [ExpectedException(typeof(ArgumentException))]
  74. public void LoginShouldFailWhenTheUserNameIsEmptyButPasswordIsNot()
  75. {
  76. //arr
  77. var userName = "";
  78. var password = "ILoveBacon";
  79. var invalidSessionId = Guid.Empty;
  80.  
  81. _networkInterfaceMock.Setup(x => x.Login(userName, password))
  82. .Returns(invalidSessionId);
  83.  
  84. //act
  85. var result = _gameEngine.Login(userName, password);
  86.  
  87. //assert
  88. Assert.AreNotEqual(invalidSessionId, result);
  89. }
  90. }
  91. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement