public async Task ReturnErrorObject_GivenNoRunningGameIsFound() { var user = new ClaimsPrincipal(new ClaimsIdentity(new Claim[] { new Claim(ClaimTypes.NameIdentifier, "SomeValueHere"), new Claim(ClaimTypes.Name, "*****@*****.**") // other required and custom claims }, "BasicAuth")); var mockPhases = new List <Phase>().AsQueryable().BuildMockDbSet(); var dataContext = new Mock <DataContext>(); dataContext.SetupGet(x => x.Phases).Returns(mockPhases.Object); var requestContext = new RequestContext(); var gameApiServiceLogger = GetMockLogger <GameApiService>().Object; var gameApiService = new Mock <GameApiService>(dataContext.Object, gameApiServiceLogger, requestContext) { CallBase = true }.Object; var requestLoggingService = new RequestLoggingService(requestContext, dataContext.Object); var logger = GetMockLogger <JoinController>().Object; var modController = new JoinController(requestContext, gameApiService, requestLoggingService, logger); modController.ControllerContext = new ControllerContext(); modController.ControllerContext.HttpContext = new DefaultHttpContext { User = user }; var response = await modController.Post(); response.StatusCode.Should().Be(200); var result = (JoinResponse)response.Value; result.Err.Should().NotBeNull(); result.Err.Description.Should().Be("Game is not running"); }
public JoinControllerShould() { var dataContext = new Mock <DataContext>(); var requestContext = new RequestContext(); var gameApiServiceLogger = new Mock <ILogger <GameApiService> >().Object; var gameApiService = new Mock <GameApiService>(dataContext.Object, gameApiServiceLogger, requestContext); var requestLoggingService = new RequestLoggingService(requestContext, dataContext.Object); var logger = Mock.Of <ILogger <JoinController> >(); controller = new JoinController(requestContext, gameApiService.Object, requestLoggingService, logger); }
public async Task Return500_GivenExceptinoOccursInGameApiService() { var dataContext = new Mock <DataContext>(); var requestContext = new RequestContext(); var gameApiServiceLogger = GetMockLogger <GameApiService>().Object; var gameApiService = new Mock <GameApiService>(dataContext.Object, gameApiServiceLogger, requestContext); gameApiService.Setup(x => x.GetCurrentStatus()).Throws(new ArgumentNullException()); var requestLoggingService = new RequestLoggingService(requestContext, dataContext.Object); var logger = GetMockLogger <GameStatusController>().Object; var modController = new GameStatusController(requestContext, gameApiService.Object, requestLoggingService, logger); var response = await modController.Get(); response.StatusCode.Should().Be(500); var result = (GameStatusResponse)response.Value; result.Err.Should().NotBeNull(); result.Err.Description.Should().Be("Server Failed to fetch Current Gamestatus"); result.Err.Message.Should().Be("Internal Server Error"); }
public async Task ReturnErrorObject_GivenNoRunningGameIsFound() { var mockPhases = new List <Phase>().AsQueryable().BuildMockDbSet(); var dataContext = new Mock <DataContext>(); dataContext.SetupGet(x => x.Phases).Returns(mockPhases.Object); var requestContext = new RequestContext(); var gameApiServiceLogger = GetMockLogger <GameApiService>().Object; var gameApiService = new Mock <GameApiService>(dataContext.Object, gameApiServiceLogger, requestContext) { CallBase = true }.Object; var requestLoggingService = new RequestLoggingService(requestContext, dataContext.Object); var logger = GetMockLogger <GameStatusController>().Object; var modController = new GameStatusController(requestContext, gameApiService, requestLoggingService, logger); var response = await modController.Get(); response.StatusCode.Should().Be(200); var result = (GameStatusResponse)response.Value; result.Err.Should().NotBeNull(); result.Err.Description.Should().Be("Game is not running"); }