public void PostRequestResultsInAcceptedWithValidGuid() { var mock = new Mock <ICreateProductRequestJournal>(); Product product; mock .Setup(m => m.Book(It.IsAny <CreateProductRequest>())) .Callback((CreateProductRequest m) => product = m.Product) .Returns(new Guid("12345678901234567890123456789012")); var controller = new CreateProductRequestsController(mock.Object); var result = controller.Post(new CreateProductRequest { Product = new Product { Name = "the name", Price = "66.66" } }); var acceptedResult = Assert.IsType <AcceptedAtActionResult>(result); Assert.True(acceptedResult.RouteValues.ContainsKey("id")); Guid guid = Assert.IsType <Guid>(acceptedResult.RouteValues["id"]); Assert.NotEqual(Guid.Empty, guid); }
public void PostRequestWithNullRequestResultsInBadRequest() { var mock = new Mock <ICreateProductRequestJournal>(); mock.Setup(m => m.Book(It.IsAny <CreateProductRequest>())).Returns(new Guid("12345678901234567890123456789012")); var controller = new CreateProductRequestsController(mock.Object); var result = controller.Post(null); var acceptedResult = Assert.IsType <BadRequestObjectResult>(result); }