public void GetWithInvalidIdShouldReturnNotFoundResult() { var controller = ControllerMockFactory.GetCommentsController(this.comments, this.photos); var result = controller.Get(TestConstants.DefaultNonExistingModelId); Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(NotFoundResult)); }
public void GetShouldReturnOkResultWithData() { var controller = ControllerMockFactory.GetCommentsController(this.comments, this.photos); var result = controller.Get(); var actual = result as OkNegotiatedContentResult <List <CommentResponseModel> >; var expectedNumberOfObjects = TestConstants.DefaultPageSize; Assert.IsNotNull(result); Assert.AreEqual(expectedNumberOfObjects, actual.Content.Count); }
public void GetWithValidIdShouldReturnOkResultWithData() { var controller = ControllerMockFactory.GetCommentsController(this.comments, this.photos); var id = 0; var result = controller.Get(id); var actual = result as OkNegotiatedContentResult <CommentResponseModel>; Assert.IsNotNull(result); Assert.AreEqual(id, actual.Content.Id); }
public void GetWithProvidedValidIdShouldReturnOkResultWithData() { var controller = ControllerMockFactory.GetAlbumsController(this.albums, this.users, this.photos); var result = controller.Get(1); var expectedCount = 1; var actual = result as OkNegotiatedContentResult <List <AlbumResponseModel> >; Assert.IsNotNull(actual); Assert.AreEqual(expectedCount, actual.Content.Count); }
public void GetShouldReturnOkResultWithData() { var controller = ControllerMockFactory.GetPhotosController(this.photos, this.albums); var result = controller.Get(); var expected = TestConstants.DefaultPageSize; var actual = result as OkNegotiatedContentResult <List <PhotoResponseModel> >; Assert.IsNotNull(actual); Assert.AreEqual(expected, actual.Content.Count); }
public void PostWithFakeAccountShouldReturnUnauthorisedResult() { var controller = ControllerMockFactory.GetAlbumsController( this.albums, this.users, this.photos, false); var albumToBeAdded = new AlbumRequestModel() { Title = TestConstants.ValidTitle }; var result = controller.Post(albumToBeAdded); Assert.IsInstanceOfType(result, typeof(UnauthorizedResult)); }
public void GetWithIdShouldReturnOkResultWithData() { var controller = ControllerMockFactory.GetPhotosController(this.photos, this.albums); var result = controller.Get(0); var actual = result as OkNegotiatedContentResult <PhotoResponseModel>; var expectedTitle = TestConstants.ValidTitle; Assert.IsNotNull(actual); Assert.AreEqual(expectedTitle, actual.Content.Title); }
public void PutWithInvalidUserShouldReturnUnauthorisedResult() { var controller = ControllerMockFactory.GetAlbumsController(this.albums, this.users, this.photos, false); var correctedTitleAlbum = new AlbumRequestModel() { Title = TestConstants.ValidTitle }; var result = controller.Put(1, correctedTitleAlbum); Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(UnauthorizedResult)); }
public void PutWithBadAlbumIdShouldReturnNotFoundResult() { var controller = ControllerMockFactory.GetAlbumsController(this.albums, this.users, this.photos); var correctedTitleAlbum = new AlbumRequestModel() { Title = TestConstants.ValidTitle }; var result = controller.Put(TestConstants.DefaultNonExistingModelId, correctedTitleAlbum); Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(NotFoundResult)); }
public void DeleteWithInvalidIdShouldReturnNotFoundResult() { var controller = ControllerMockFactory.GetCommentsController(this.comments, this.photos); var result = controller.Delete(TestConstants.DefaultNonExistingModelId); var expectedNumberOfComments = TestConstants.DefaultNumberOfModels; var expectedNumberOfSaveChanges = 0; Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(NotFoundResult)); Assert.AreEqual(expectedNumberOfComments, this.comments.NumberOfModels); Assert.AreEqual(expectedNumberOfSaveChanges, this.comments.NumberOfSaves); }
public void DeleteWithInvalidUserShouldReturnUnauthorisedResult() { var controller = ControllerMockFactory.GetCommentsController(this.comments, this.photos, false); var result = controller.Delete(0); var expectedNumberOfComments = TestConstants.DefaultNumberOfModels; var expectedNumberOfSaveChanges = 0; Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(UnauthorizedResult)); Assert.AreEqual(expectedNumberOfComments, this.comments.NumberOfModels); Assert.AreEqual(expectedNumberOfSaveChanges, this.comments.NumberOfSaves); }
public void DeleteWithWrongUserShouldReturnUnauthorisedResult() { var controller = ControllerMockFactory.GetAlbumsController( this.albums, this.users, this.photos, false); var result = controller.Delete(0); var expectedSaveChanges = 0; var expectedCount = TestConstants.DefaultNumberOfModels; Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(UnauthorizedResult)); Assert.AreEqual(expectedSaveChanges, this.albums.NumberOfSaves); Assert.AreEqual(expectedCount, this.albums.NumberOfModels); }
public void DeleteWithValidIdShouldReturnOkResult() { var controller = ControllerMockFactory.GetCommentsController(this.comments, this.photos); var result = controller.Delete(0); var actual = result as OkNegotiatedContentResult <string>; var expectedContent = "Comment deleted"; var expectedNumberOfComments = TestConstants.DefaultNumberOfModels - 1; var expectedNumberOfSaveChanges = 1; Assert.IsNotNull(result); Assert.AreEqual(expectedContent, actual.Content); Assert.AreEqual(expectedNumberOfComments, this.comments.NumberOfModels); Assert.AreEqual(expectedNumberOfSaveChanges, this.comments.NumberOfSaves); }
public void PostWithInvalidModelStateShouldReturnInvalidModelStateResult() { var controller = ControllerMockFactory.GetPhotosController(this.photos, this.albums); controller.ModelState.AddModelError("url", "Invalid url!"); var photo = new PhotoRequestModel(); var result = controller.Post(photo); var expectedSaveChanges = 0; var expectedNumberOfPhotos = TestConstants.DefaultNumberOfModels; Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(InvalidModelStateResult)); Assert.AreEqual(expectedNumberOfPhotos, this.photos.NumberOfModels); Assert.AreEqual(expectedSaveChanges, this.photos.NumberOfSaves); }
public void PostWithInvalidModelShouldReturnInvalidModelStateResult() { var controller = ControllerMockFactory.GetCommentsController(this.comments, this.photos); controller.ModelState.AddModelError("content", "Invalid content!"); var commentToBeAdded = new CommentRequestModel(); var result = controller.Post(0, commentToBeAdded); var expectedNumberOfCommentsAdded = 0; var expectedSaveChanges = 0; Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(InvalidModelStateResult)); Assert.AreEqual(expectedNumberOfCommentsAdded, this.photos.GetById(0).Comments.Count); Assert.AreEqual(expectedSaveChanges, this.photos.NumberOfSaves); }
public void PutWithInvalidModelShouldReturnInvalidModelStateResult() { var controller = ControllerMockFactory.GetCommentsController(this.comments, this.photos); controller.ModelState.AddModelError("content", "Invalid content!"); var updatedComment = new CommentRequestModel(); var result = controller.Put(0, updatedComment); var expectedUpdatedCount = 0; var expectedSaveChanges = 0; Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(InvalidModelStateResult)); Assert.AreEqual(expectedUpdatedCount, this.comments.UpdatedEntities.Count); Assert.AreEqual(expectedSaveChanges, this.comments.NumberOfSaves); }
public void PutWithInvalidModelStateShouldReturnInvalidModelStateResultWithContent() { var controller = ControllerMockFactory.GetAlbumsController(this.albums, this.users, this.photos); controller.ModelState.AddModelError("title", "Title cannot be null."); var emptyAlbum = new AlbumRequestModel(); var result = controller.Put(0, emptyAlbum); var expectedUpdates = 0; var expectedSaveChangesCalls = 0; Assert.IsInstanceOfType(result, typeof(InvalidModelStateResult)); Assert.AreEqual(expectedUpdates, this.albums.UpdatedEntities.Count); Assert.AreEqual(expectedSaveChangesCalls, this.albums.NumberOfSaves); }
public void DeleteWithValidDataShouldReturnOkResult() { var controller = ControllerMockFactory.GetAlbumsController(this.albums, this.users, this.photos); var result = controller.Delete(0); var actual = result as OkNegotiatedContentResult <string>; var expectedSaveChanges = 1; var expectedCount = TestConstants.DefaultNumberOfModels - 1; var expectedContent = "Album deleted with all pictures inside."; // TODO: Add Assert to check if all photos are removed. Assert.IsNotNull(result); Assert.AreEqual(expectedSaveChanges, this.albums.NumberOfSaves); Assert.AreEqual(expectedCount, this.albums.NumberOfModels); Assert.AreEqual(expectedContent, actual.Content); }
public void PutWithInvalidUserShouldReturnUnauthorisedResult() { var controller = ControllerMockFactory.GetCommentsController(this.comments, this.photos, false); var updatedComment = new CommentRequestModel() { Content = "Edited Content" }; var result = controller.Put(TestConstants.DefaultNonExistingModelId, updatedComment); var expectedUpdatedCount = 0; var expectedSaveChanges = 0; Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(NotFoundResult)); Assert.AreEqual(expectedUpdatedCount, this.comments.UpdatedEntities.Count); Assert.AreEqual(expectedSaveChanges, this.comments.NumberOfSaves); }
public void PostWithValidDataShouldReturnOkResult() { var controller = ControllerMockFactory.GetAlbumsController(this.albums, this.users, this.photos); var albumToBeAdded = new AlbumRequestModel() { Title = TestConstants.ValidTitle }; var result = controller.Post(albumToBeAdded); var expectedSaveChanges = 1; var expectedAlbumsAfterChange = TestConstants.DefaultNumberOfModels + 1; Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(OkNegotiatedContentResult <int>)); Assert.AreEqual(expectedAlbumsAfterChange, this.albums.NumberOfModels); Assert.AreEqual(expectedSaveChanges, this.albums.NumberOfSaves); }
public void PostWithInvalidPhotoIdShouldReturnNotFoundResult() { var controller = ControllerMockFactory.GetCommentsController(this.comments, this.photos); var commentToBeAdded = new CommentRequestModel() { Content = TestConstants.ValidContent, UserId = TestConstants.ValidUserId }; var result = controller.Post(TestConstants.DefaultNonExistingModelId, commentToBeAdded); var expectedNumberOfCommentsAdded = 0; var expectedSaveChanges = 0; Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(NotFoundResult)); Assert.AreEqual(expectedNumberOfCommentsAdded, this.photos.GetById(0).Comments.Count); Assert.AreEqual(expectedSaveChanges, this.photos.NumberOfSaves); }
public void PutWithValidDataShouldReturnOkResult() { var controller = ControllerMockFactory.GetCommentsController(this.comments, this.photos); var updatedComment = new CommentRequestModel() { Content = "Edited Content" }; var result = controller.Put(0, updatedComment); var actual = result as OkNegotiatedContentResult <string>; var expectedContent = "Comment updated"; var expectedUpdatedCount = 1; var expectedSaveChanges = 1; Assert.IsNotNull(result); Assert.AreEqual(expectedContent, actual.Content); Assert.AreEqual(expectedUpdatedCount, this.comments.UpdatedEntities.Count); Assert.AreEqual(expectedSaveChanges, this.comments.NumberOfSaves); }
public void PutWithValidDataProvidedShouldReturnOkResult() { var controller = ControllerMockFactory.GetAlbumsController(this.albums, this.users, this.photos); var correctedTitleAlbum = new AlbumRequestModel() { Title = "CoolTitle" }; var result = controller.Put(0, correctedTitleAlbum); var actual = result as OkNegotiatedContentResult <string>; var expectedContent = "Album updated"; var expectedUpdates = 1; var expectedSaveChangesCalls = 1; Assert.AreEqual(expectedContent, actual.Content); Assert.AreEqual(expectedUpdates, this.albums.UpdatedEntities.Count); Assert.AreEqual(expectedSaveChangesCalls, this.albums.NumberOfSaves); }
public void PostWithInvalidAlbumIdShouldReturnNotFoundResult() { var controller = ControllerMockFactory.GetPhotosController(this.photos, this.albums); var photo = new PhotoRequestModel { Title = TestConstants.ValidTitle, ImageUrl = TestConstants.ValidUrl, FileExtension = TestConstants.ValidFileExtension, AlbumId = TestConstants.DefaultNonExistingModelId }; var result = controller.Post(photo); var expectedSaveChanges = 0; var expectedNumberOfPhotos = TestConstants.DefaultNumberOfModels; Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(NotFoundResult)); Assert.AreEqual(expectedNumberOfPhotos, this.photos.NumberOfModels); Assert.AreEqual(expectedSaveChanges, this.photos.NumberOfSaves); }
public void PostWithValidDataShouldReturnOkResult() { var controller = ControllerMockFactory.GetPhotosController(this.photos, this.albums); var photo = new PhotoRequestModel { Title = TestConstants.ValidTitle, ImageUrl = TestConstants.ValidUrl, FileExtension = TestConstants.ValidFileExtension, AlbumId = 0 }; var result = controller.Post(photo); var expectedNumberOfPhotos = 16; var expectedSaveChanges = 1; Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(OkNegotiatedContentResult <int>)); Assert.AreEqual(expectedNumberOfPhotos, this.photos.NumberOfModels); Assert.AreEqual(expectedSaveChanges, this.photos.NumberOfSaves); }
public void PostWithValidDataShouldReturnOkResult() { var controller = ControllerMockFactory.GetCommentsController(this.comments, this.photos); var commentToBeAdded = new CommentRequestModel() { Content = TestConstants.ValidContent, UserId = TestConstants.ValidUserId }; var result = controller.Post(0, commentToBeAdded); var actual = result as OkNegotiatedContentResult <string>; var expectedContent = "Comment successfully added."; var expectedSaveChanges = 1; var expectedNumberOfCommentsAdded = 1; Assert.IsNotNull(result); Assert.AreEqual(expectedContent, actual.Content); Assert.AreEqual(expectedNumberOfCommentsAdded, this.photos.GetById(0).Comments.Count); Assert.AreEqual(expectedSaveChanges, this.photos.NumberOfSaves); }
public void PutWithValidDataShouldReturnOkResult() { var controller = ControllerMockFactory.GetPhotosController(this.photos, this.albums); var result = controller.Put(0, true); var expectedContent = "Successfully liked picture!"; var expectedLikes = 1; var actual = result as OkNegotiatedContentResult <string>; Assert.IsNotNull(result); Assert.AreEqual(expectedContent, actual.Content); Assert.AreEqual(expectedLikes, this.photos.GetById(0).Likes); result = controller.Put(0, false); expectedContent = "Successfully disliked picture!"; expectedLikes = 0; actual = result as OkNegotiatedContentResult <string>; Assert.IsNotNull(result); Assert.AreEqual(expectedContent, actual.Content); Assert.AreEqual(expectedLikes, this.photos.GetById(0).Likes); }