public void TestGetOptions() { //Arrange //Act var results = _testController.GetOptions(new Guid()); //Assert _mockService.Verify(s => s.GetOptionsByProductID(It.IsAny <Guid>())); }
public async Task GetoOptionsShouldReturnResponseDto() { // Arrange _productOptionService.Setup(x => x.GetAllByProductId(It.IsAny <Guid>())).ReturnsAsync(new QueryResponseDto <ProductOptionsResponseDto>(new ProductOptionsResponseDto())); var controller = new ProductOptionsController(_productOptionService.Object); // Act var response = await controller.GetOptions(Guid.NewGuid()); // Assert Assert.IsInstanceOfType(response, typeof(OkNegotiatedContentResult <ProductOptionsResponseDto>)); }
public async Task GetoOptionsShouldBadRequestWhenFail() { // Arrange _productOptionService.Setup(x => x.GetAllByProductId(It.IsAny <Guid>())).ReturnsAsync(new QueryResponseDto <ProductOptionsResponseDto>("Error!")); var controller = new ProductOptionsController(_productOptionService.Object); // Act var response = await controller.GetOptions(Guid.NewGuid()); // Assert Assert.IsInstanceOfType(response, typeof(BadRequestErrorMessageResult)); Assert.AreEqual(((BadRequestErrorMessageResult)response).Message, "Error!"); }
public void when_returning_product_options_then_existence_of_product_should_get_validated_first() { // Arrange: var productServiceMock = new Mock <IProductService>(); productServiceMock.Setup(m => m.GetProductById(It.IsAny <Guid>())).Returns(default(Product)); var productOptionServiceMock = new Mock <IProductOptionService>(); var productsController = new ProductOptionsController(productServiceMock.Object, productOptionServiceMock.Object); // Act: Action getProductOptions = () => productsController.GetOptions(Guid.NewGuid()); // Assert: Assert.Throws <HttpResponseException>(getProductOptions); }
public async Task GetProductOptionsByProductId_ReturnsOkResult_IfFound() { //Arrange var product = _fixture.Create <Product>(); var productId = Guid.NewGuid(); var productOptions = _fixture.CreateMany <ProductOption>(3); _productService.Setup(x => x.GetProductByIdAsync(productId)).ReturnsAsync(product); _productOptionsService.Setup(x => x.GetAllProductOptionsByProductIdAsync(productId)) .ReturnsAsync(productOptions); //Act var result = await _productOptionsController.GetOptions(productId); //Assert result.Should().NotBeNull().And.BeAssignableTo <IStatusCodeActionResult>() .Which.StatusCode.Should().Be((int)HttpStatusCode.OK); }