public void ListFlavorsServiceShouldReturnOkIfServiceListReturnsData() { // Arrange var mock = new Mock <IPizzaFlavorService>(); mock.Setup <IEnumerable <PizzaFlavorViewModel> >(_ => _.List()) .Returns(Builder <PizzaFlavorViewModel> .CreateListOfSize(100).Build()); Service = mock.Object; Controller = new PizzaFlavorsController(Service); Controller.Configuration = new HttpConfiguration(); Controller.Request = new HttpRequestMessage(); // Act var result = Controller.List(); // Assert Assert.AreEqual(HttpStatusCode.OK, result.StatusCode); }
public void AddFlavorShouldReturnUnprocessableEntityIfModelStateIsInvalid() { // Arrange var mock = new Mock <IPizzaFlavorService>(); Service = mock.Object; Controller = new PizzaFlavorsController(Service); Controller.Configuration = new HttpConfiguration(); Controller.Request = new HttpRequestMessage(); Controller.ModelState.AddModelError("", ""); var mockAddModel = Builder <PizzaFlavorAddModel> .CreateNew().Build(); // Act var result = Controller.Add(mockAddModel); // Assert Assert.AreEqual(422, (int)result.StatusCode); }
public void AddFlavorShouldReturnInternalServerErrorIfServiceAddReturnsFalse() { // Arrange var mock = new Mock <IPizzaFlavorService>(); mock.Setup <bool>(_ => _.Add(It.IsAny <PizzaFlavorAddModel>())) .Returns(false); Service = mock.Object; Controller = new PizzaFlavorsController(Service); Controller.Configuration = new HttpConfiguration(); Controller.Request = new HttpRequestMessage(); var mockAddModel = Builder <PizzaFlavorAddModel> .CreateNew().Build(); // Act var result = Controller.Add(mockAddModel); // Assert Assert.AreEqual(HttpStatusCode.InternalServerError, result.StatusCode); }
public void DeleteFlavorShouldReturnNotFoundIfServiceReturnsFalse() { // Arrange var mock = new Mock <IPizzaFlavorService>(); var mockId = Guid.NewGuid(); mock.Setup <bool>(_ => _.Delete(mockId)) .Returns(false); Service = mock.Object; Controller = new PizzaFlavorsController(Service); Controller.Configuration = new HttpConfiguration(); Controller.Request = new HttpRequestMessage(); // Act var result = Controller.Delete(mockId); // Assert Assert.AreEqual(HttpStatusCode.NotFound, result.StatusCode); }
public void GetFlavorByIdShouldReturnNotFoundIfServiceReturnsNull() { // Arrange var mock = new Mock <IPizzaFlavorService>(); var mockId = Guid.NewGuid(); mock.Setup <PizzaFlavorViewModel>(_ => _.Get(mockId)) .Returns <PizzaFlavorViewModel>(null); Service = mock.Object; Controller = new PizzaFlavorsController(Service); Controller.Configuration = new HttpConfiguration(); Controller.Request = new HttpRequestMessage(); // Act var result = Controller.Get(mockId); // Assert Assert.AreEqual(HttpStatusCode.NotFound, result.StatusCode); }
public void ListFlavorsShouldReturnTheSameDataIfServiceListReturnsData() { // Arrange var mock = new Mock <IPizzaFlavorService>(); var mockContent = Builder <PizzaFlavorViewModel> .CreateListOfSize(100).Build(); mock.Setup <IEnumerable <PizzaFlavorViewModel> >(_ => _.List()) .Returns(mockContent); Service = mock.Object; Controller = new PizzaFlavorsController(Service); Controller.Configuration = new HttpConfiguration(); Controller.Request = new HttpRequestMessage(); // Act var result = Controller.List(); IEnumerable <PizzaFlavorViewModel> content; result.TryGetContentValue <IEnumerable <PizzaFlavorViewModel> >(out content); // Assert Assert.AreEqual(mockContent, content); }
public void GetFlavorByIdShouldReturnOkAndTheSameViewModelIfServiceReturnsData() { // Arrange var mock = new Mock <IPizzaFlavorService>(); var mockId = Guid.NewGuid(); var mockViewModel = Builder <PizzaFlavorViewModel> .CreateNew().Build(); mock.Setup <PizzaFlavorViewModel>(_ => _.Get(mockId)) .Returns(mockViewModel); Service = mock.Object; Controller = new PizzaFlavorsController(Service); Controller.Configuration = new HttpConfiguration(); Controller.Request = new HttpRequestMessage(); // Act var result = Controller.Get(mockId); PizzaFlavorViewModel content; result.TryGetContentValue <PizzaFlavorViewModel>(out content); // Assert Assert.AreEqual(HttpStatusCode.OK, result.StatusCode); Assert.AreEqual(mockViewModel, content); }