Esempio n. 1
0
        public async Task GenerateLinkRegionNotFound()
        {
            //Arrange
            var playerName     = "Test Name";
            var playerRegion   = "Test Region";
            var generatLinkDto = new GenerateLinkDto
            {
                Nickname = playerName,
                Server   = playerRegion
            };
            var mockRiotService = new Mock <IRiotApiService>();

            mockRiotService.Setup(rs => rs.FetchPlayerId(playerName, playerRegion)).ThrowsAsync(new RegionNotFoundException());
            var mockSendgridService = new Mock <ISendgridService>();
            var controller          = new WebPageController(mockRiotService.Object, mockSendgridService.Object);

            //Act
            var result = await controller.GenerateLink(generatLinkDto);

            //Assert
            var viewResult = Assert.IsType <ViewResult>(result);

            viewResult.ViewData.ModelState.TryGetValue("RegionNotFound", out var error);
            Assert.Equal("Selected region not found.", error.Errors[0].ErrorMessage);
        }
Esempio n. 2
0
        public async Task GenerateLinkSuccess()
        {
            //Arrange
            var playerName     = "Test Name";
            var playerRegion   = "Test Region";
            var generatLinkDto = new GenerateLinkDto
            {
                Api      = "Test Api",
                Nickname = playerName,
                Server   = playerRegion
            };
            var mockRiotService = new Mock <IRiotApiService>();

            mockRiotService.Setup(rs => rs.FetchPlayerId(playerName, playerRegion)).ReturnsAsync("ID");
            var mockSendgridService = new Mock <ISendgridService>();
            var controller          = new WebPageController(mockRiotService.Object, mockSendgridService.Object);

            controller.ControllerContext = new ControllerContext {
                HttpContext = new DefaultHttpContext()
            };

            //Act
            var result = await controller.GenerateLink(generatLinkDto);

            //Assert
            var redirectToActionResult = Assert.IsType <RedirectToActionResult>(result);

            Assert.Equal("Link", redirectToActionResult.ActionName);
        }
Esempio n. 3
0
        public async Task GenerateLinkModelStateInvalid()
        {
            //Arrange
            var generatLinkDto      = new GenerateLinkDto();
            var mockRiotService     = new Mock <IRiotApiService>();
            var mockSendgridService = new Mock <ISendgridService>();
            var controller          = new WebPageController(mockRiotService.Object, mockSendgridService.Object);

            controller.ModelState.AddModelError("Testing Error", "Error");

            //Act
            var result = await controller.GenerateLink(generatLinkDto);

            //Assert
            var viewResult = Assert.IsType <ViewResult>(result);

            viewResult.ViewData.ModelState.TryGetValue("Testing Error", out var error);
            Assert.Equal("Error", error.Errors[0].ErrorMessage);
        }