Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using Moq;
- using NUnit.Framework;
- using TicTacToe.Core;
- using TicTacToe.Core.GameNetworkInterfaces;
- namespace TicTacToe.Tests
- {
- [TestFixture]
- public class GameEngineTests
- {
- private GameEngine _gameEngine;
- private Mock<ICommonGameNetworkControl> _networkMock;
- [SetUp]
- public void Setup()
- {
- _networkMock = new Mock<ICommonGameNetworkControl>();
- _gameEngine = new GameEngine(_networkMock.Object);
- }
- [Test]
- public void IfNoSquareHaveValueThenNoWinner()
- {
- //Arrainge
- var board = new string[3,3] { {"","",""}, {"","",""},{"","",""}};
- var expected = "";
- //Act
- var result = _gameEngine.GetWinner(board);
- //Assert
- Assert.AreEqual(expected, result);
- }
- [Test]
- public void WhenTopRowIsAllXThenXWins()
- {
- //Arrainge
- var board = new string[3, 3] { { "X", "X", "X" }, { "", "", "" }, { "", "", "" } };
- var expected = "X";
- //Act
- var result = _gameEngine.GetWinner(board);
- //Assert
- Assert.AreEqual(expected, result);
- }
- [Test]
- public void ShouldBeAbleToLoginToNetwork()
- {
- //Arrainge
- var userName = "Bob";
- var password = "TicTacToeMaster";
- var expectedValue = Guid.NewGuid();
- _networkMock.Setup(x => x.Login(userName, password)).Returns(expectedValue);
- //Act
- var result = _gameEngine.Login(userName, password);
- //Assert
- Assert.AreEqual(expectedValue, result);
- }
- [Test]
- [ExpectedException(typeof(ArgumentException))]
- public void WhenUserNameIsEmptyLoginShouldThrowArgumentException()
- {
- //Arrainge
- var userName = "";
- var password = "TicTacToeMaster";
- var expectedValue = Guid.NewGuid();
- _networkMock.Setup(x => x.Login(userName, password)).Returns(Guid.Empty);
- //Act
- var result = _gameEngine.Login(userName, password);
- //Assert
- Assert.AreEqual(expectedValue, result);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement