public void Post() { // Arrange var mockRepository = new Mock <IProductRepository>(); var controller = new Products2Controller(mockRepository.Object); // Act IHttpActionResult actionResult = controller.Delete(10); // Assert Assert.IsInstanceOfType(actionResult, typeof(OkResult)); var book = new Book() { Code = "AAA-9999", Title = "Stars Wars", ReleaseDate = "12/13/2016", Price = 99.9 }; _booksProvider.Setup(x => x.SaveBook(book)); booksController.Post(book); }
public void DeleteReturnsOk() { // Arrange var mockRepository = new Mock <IProductRepository>(); var controller = new Products2Controller(mockRepository.Object); // Act IHttpActionResult actionResult = controller.Delete(10); // Assert Assert.IsInstanceOfType(actionResult, typeof(OkResult)); }
public void GetReturnsNotFound() { // Arrange var mockRepository = new Mock <IProductRepository>(); var controller = new Products2Controller(mockRepository.Object); // Act IHttpActionResult actionResult = controller.Get(10); // Assert Assert.IsInstanceOfType(actionResult, typeof(NotFoundResult)); }
public void PostMethodSetsLocationHeader() { // Arrange var mockRepository = new Mock <IProductRepository>(); var controller = new Products2Controller(mockRepository.Object); // Act IHttpActionResult actionResult = controller.Post(new Product { Id = 10, Name = "Product1" }); var createdResult = actionResult as CreatedAtRouteNegotiatedContentResult <Product>; // Assert Assert.IsNotNull(createdResult); Assert.AreEqual("DefaultApi", createdResult.RouteName); Assert.AreEqual(10, createdResult.RouteValues["id"]); }
public void PutReturnsContentResult() { // Arrange var mockRepository = new Mock <IProductRepository>(); var controller = new Products2Controller(mockRepository.Object); // Act IHttpActionResult actionResult = controller.Put(new Product { Id = 10, Name = "Product" }); var contentResult = actionResult as NegotiatedContentResult <Product>; // Assert Assert.IsNotNull(contentResult); Assert.AreEqual(HttpStatusCode.Accepted, contentResult.StatusCode); Assert.IsNotNull(contentResult.Content); Assert.AreEqual(10, contentResult.Content.Id); }
public void GetReturnsNotFound() { // arrange var item = this.GetDemoProduct(); var mockDbSet = Substitute.For<DbSet<Product>>(); var mockDbContext = Substitute.For<StoreAppTestControllerContext>(); mockDbContext.Products = mockDbSet; mockDbContext.Products.Find(item.Id).Returns(item); var controller = new Products2Controller(mockDbContext); // act IHttpActionResult actionResult = controller.Get(10); // assert Assert.IsType(typeof(NotFoundResult), actionResult); }
public void DeleteReturnsOk() { // arrange var item = this.GetDemoProduct(); var mockDbSet = Substitute.For<DbSet<Product>>(); var mockDbContext = Substitute.For<StoreAppTestControllerContext>(); mockDbContext.Products = mockDbSet; mockDbContext.Products.Find(item.Id).Returns(item); mockDbContext.Products.Remove(item).Returns(item); var controller = new Products2Controller(mockDbContext); // act var actionResult = controller.Delete(1); // assert Assert.IsType(typeof(OkResult), actionResult); }
public void GetReturnsProductWithSameId() { // Arrange var mockRepository = new Mock <IProductRepository>(); mockRepository.Setup(x => x.GetById(42)) .Returns(new Product { Id = 42 }); var controller = new Products2Controller(mockRepository.Object); // Act IHttpActionResult actionResult = controller.Get(42); var contentResult = actionResult as OkNegotiatedContentResult <Product>; // Assert Assert.IsNotNull(contentResult); Assert.IsNotNull(contentResult.Content); Assert.AreEqual(42, contentResult.Content.Id); }
public void GetReturnsProductWithSameId() { // arrange var item = this.GetDemoProduct(); var mockDbSet = Substitute.For<DbSet<Product>>(); var mockDbContext = Substitute.For<StoreAppTestControllerContext>(); mockDbContext.Products = mockDbSet; mockDbContext.Products.Find(item.Id).Returns(item); var controller = new Products2Controller(mockDbContext); // act IHttpActionResult actionResult = controller.Get(1); var contentResult = actionResult as OkNegotiatedContentResult<Product>; // assert Assert.NotNull(contentResult); Assert.NotNull(contentResult.Content); Assert.Equal(1, contentResult.Content.Id); }
public void PostMethodSetsLocationHeader() { // arrange var item = this.GetDemoProduct(); var mockDbSet = Substitute.For<DbSet<Product>>(); var mockDbContext = Substitute.For<StoreAppTestControllerContext>(); mockDbContext.Products = mockDbSet; mockDbContext.Products.Add(item).Returns(item); var controller = new Products2Controller(mockDbContext); // act var actionResult = controller.Post(item); var createResult = actionResult as CreatedAtRouteNegotiatedContentResult<Product>; // assert Assert.NotNull(createResult); Assert.Equal("DefaultApi", createResult.RouteName); Assert.Equal(1, createResult.RouteValues["id"]); }
public void PutReturnsContentResult() { // arrange var item = this.GetDemoProduct(); var mockDbSet = Substitute.For<DbSet<Product>>(); var mockDbContext = Substitute.For<StoreAppTestControllerContext>(); mockDbContext.Products = mockDbSet; var controller = new Products2Controller(mockDbContext); // act var contentResult = controller.Put(item) as NegotiatedContentResult<Product>; // assert Assert.NotNull(contentResult); Assert.Equal(HttpStatusCode.Accepted, contentResult.StatusCode); Assert.NotNull(contentResult.Content); Assert.Equal(1, contentResult.Content.Id); }