public void ProcessPlayerMovementReturnsOkResponseWithAGhostGameResponseDto() { Mock <IWordTreeManager> managerMock = new Mock <IWordTreeManager>(); managerMock.Setup(x => x.GetNextMovement(TestWord)) .Returns(new GhostGameResponseDto { GameStatus = GameStatus.Playing }); GhostGameController controller = new GhostGameController(managerMock.Object); IActionResult actionResult = controller.ProcessPlayerMovement(new GhostGameRequestDto { CurrentWord = TestWord }); ObjectResult objectResult = actionResult as OkObjectResult; Assert.IsNotNull(objectResult); GhostGameResponseDto content = objectResult.Value as GhostGameResponseDto; Assert.IsNotNull(content); Assert.AreEqual(GameStatus.Playing, content.GameStatus); Assert.AreEqual(200, objectResult.StatusCode); }
public void ProcessPlayerMovementReturnsInternalServerErrorResponseIfAnUnexpectedExceptionHappens() { Mock <IWordTreeManager> managerMock = new Mock <IWordTreeManager>(); managerMock.Setup(x => x.GetNextMovement(TestWord)).Throws(new Exception()); GhostGameController controller = new GhostGameController(managerMock.Object); IActionResult actionResult = controller.ProcessPlayerMovement(new GhostGameRequestDto { CurrentWord = TestWord }); ObjectResult objectResult = actionResult as ObjectResult; Assert.IsNotNull(objectResult); Assert.AreEqual(500, objectResult.StatusCode); }