public void GetRestaurantsOnCuisineId_NoRestaurnats_Empty() { //arrange var expectedResponse = new API.ViewModels.Restaurant[] { }; var repoResonse = new Restaurant[] { }; var cuisineId = 5; var expectedCollectionCount = 0; MockRepository.Setup(m => m.DoseCuisineIdExist(cuisineId)).Returns(true); MockRepository.Setup(m => m.GetRestaurantForCuisine(cuisineId)).Returns(repoResonse); MockIdentity.Setup(m => m.GetRequestingUserId()).Returns(10); var ctrl = new CuisinesController(MockRepository.Object, MockLogger.Object, MockIdentity.Object); //act var actionResult = ctrl.Get(cuisineId); var contentResult = actionResult as OkNegotiatedContentResult <IEnumerable <API.ViewModels.Restaurant> >; //assert Assert.IsNotNull(contentResult, "Ok-200 status was not returned"); Assert.IsNotNull(contentResult.Content, "No content was returned"); RestaurantsControllerTests.ValidateRestaurantCollectionResponse(contentResult.Content, expectedResponse, expectedCollectionCount); }
public void GetRestaurantsOnCuisineId_OneRestaurnat_OK() { //arrange var expectedRestID = 1234; var cuisineName = "Mexican"; var cuisineId = 10; var restName = "No1 Mexican Restaurant"; var createdUser = 10; var expectedCollectionCount = 1; var cuisine = new Cuisine { Name = cuisineName, Id = cuisineId, CreatedBy = createdUser, UpdatedBy = createdUser }; var expectedResponse = new[] { new API.ViewModels.Restaurant { Id = expectedRestID, AverageRating = 0, CuisineName = cuisineName, CuisineId = cuisineId, Name = restName, ReviewCount = 0 } }; var repoResonse = new[] { new Restaurant { Id = expectedRestID, CreatedBy = createdUser, UpdatedBy = createdUser, Cuisine = cuisine, Name = restName } }; MockRepository.Setup(m => m.DoseCuisineIdExist(cuisineId)).Returns(true); MockRepository.Setup(m => m.GetRestaurantForCuisine(cuisineId)).Returns(repoResonse); MockIdentity.Setup(m => m.GetRequestingUserId()).Returns(10); var ctrl = new CuisinesController(MockRepository.Object, MockLogger.Object, MockIdentity.Object); //act var actionResult = ctrl.Get(cuisineId); var contentResult = actionResult as OkNegotiatedContentResult <IEnumerable <API.ViewModels.Restaurant> >; //assert Assert.IsNotNull(contentResult, "Ok-200 status was not returned"); Assert.IsNotNull(contentResult.Content, "No content was returned"); RestaurantsControllerTests.ValidateRestaurantCollectionResponse(contentResult.Content, expectedResponse, expectedCollectionCount); }
public void GetAllCuisines_ServerException_InternalError() { //arrange MockIdentity.Setup(m => m.GetRequestingUserId()).Throws(new Exception()); var ctrl = new CuisinesController(MockRepository.Object, MockLogger.Object, MockIdentity.Object); //act var actionResult = ctrl.Get(); // assert Assert.IsInstanceOfType(actionResult, typeof(InternalServerErrorResult)); }
public void GetAllCuisines_twoCuisine_OK() { //arrange var cuisineName = "Mexican"; var cuisineId = 1; var createdUser = 10; var cuisineName2 = "Indian"; var cuisineId2 = 2; var cuisine1 = new Cuisine { Name = cuisineName, Id = cuisineId, CreatedBy = createdUser, UpdatedBy = createdUser }; var cuisine2 = new Cuisine { Name = cuisineName2, Id = cuisineId2, CreatedBy = createdUser, UpdatedBy = createdUser }; var expectedResponse = new List <API.ViewModels.Cuisine>() { new API.ViewModels.Cuisine { Id = cuisineId, Name = cuisineName }, new API.ViewModels.Cuisine { Id = cuisineId2, Name = cuisineName2 } }; var expectedCuisineCount = 2; var repoResonse = new[] { cuisine1, cuisine2 }; MockRepository.Setup(m => m.GetAllCuisines()).Returns(repoResonse); MockIdentity.Setup(m => m.GetRequestingUserId()).Returns(10); var ctrl = new CuisinesController(MockRepository.Object, MockLogger.Object, MockIdentity.Object); //act var actionResult = ctrl.Get(); var contentResult = actionResult as OkNegotiatedContentResult <IEnumerable <API.ViewModels.Cuisine> >; //assert Assert.IsNotNull(contentResult, "Ok-200 status was not returned"); Assert.IsNotNull(contentResult.Content, "No content was returned"); ValidateCuisineCollectionResponse(contentResult, expectedResponse, expectedCuisineCount); }
public void GetAllCuisines_DatabaseException_BadData() { //arrange MockRepository.Setup(m => m.GetAllCuisines()) .Throws(new Exception()); MockIdentity.Setup(m => m.GetRequestingUserId()).Returns(10); var ctrl = new CuisinesController(MockRepository.Object, MockLogger.Object, MockIdentity.Object); //act var actionResult = ctrl.Get(); // assert Assert.IsInstanceOfType(actionResult, typeof(BadRequestResult)); }
public void GetRestaurantsOnCuisineId_DatabaseException_BadData() { //arrange var cuisineId = 4; MockRepository.Setup(m => m.DoseCuisineIdExist(cuisineId)).Returns(true); MockRepository.Setup(m => m.GetRestaurantForCuisine(cuisineId)).Throws(new Exception()); MockIdentity.Setup(m => m.GetRequestingUserId()).Returns(10); var ctrl = new CuisinesController(MockRepository.Object, MockLogger.Object, MockIdentity.Object); //act var actionResult = ctrl.Get(cuisineId); // assert Assert.IsInstanceOfType(actionResult, typeof(BadRequestResult)); }
public void GetRestaurantsOnCuisineId_InvalidCuisineID_NotFound() { //arrange var repoResonse = new Restaurant[] { }; var cuisineId = 5; MockRepository.Setup(m => m.DoseCuisineIdExist(cuisineId)).Returns(false); MockRepository.Setup(m => m.GetRestaurantForCuisine(cuisineId)).Returns(repoResonse); MockIdentity.Setup(m => m.GetRequestingUserId()).Returns(10); var ctrl = new CuisinesController(MockRepository.Object, MockLogger.Object, MockIdentity.Object); //act var actionResult = ctrl.Get(cuisineId); // assert Assert.IsInstanceOfType(actionResult, typeof(NotFoundResult)); }
public void GetAllCuisines_NoCuisine_Empty() { //arrange var expectedResponse = new List <API.ViewModels.Cuisine>(); var expectedCuisineCount = 0; var repoResonse = Enumerable.Empty <Domain.Cuisine>(); MockRepository.Setup(m => m.GetAllCuisines()).Returns(repoResonse); MockIdentity.Setup(m => m.GetRequestingUserId()).Returns(10); var ctrl = new CuisinesController(MockRepository.Object, MockLogger.Object, MockIdentity.Object); //act var actionResult = ctrl.Get(); var contentResult = actionResult as OkNegotiatedContentResult <IEnumerable <API.ViewModels.Cuisine> >; //assert Assert.IsNotNull(contentResult, "Ok-200 status was not returned"); Assert.IsNotNull(contentResult.Content, "No content was returned"); ValidateCuisineCollectionResponse(contentResult, expectedResponse, expectedCuisineCount); }