public void GetOneNewsItem_NotFound() { // Arrange var controller = new NewsItemsController(); // Act var response = controller.GetNewsItem(-1); Assert.IsInstanceOfType(response, typeof(NotFoundResult)); }
public async Task Index() { var controller = new NewsItemsController(_newsItemsRepository.Object, null, _itemTranslationRepository.Object); var model = new List <NewsItem>().AsQueryable().BuildMock(); _newsItemsRepository.Setup(repo => repo.GetAll()).Returns(model.Object); var result = await controller.Index(null, null, null, null); Assert.IsType <ViewResult>(result); }
public void GetOneNewsItem_OK() { // Arrange var controller = new NewsItemsController(); // Act var response = controller.GetNewsItem(1); var result = response as OkNegotiatedContentResult <NewsItemSend>; // Assert Assert.IsNotNull(result); Assert.IsNotNull(result.Content); }
public void GetOneNewsItem_OK() { // Arrange var controller = new NewsItemsController(); // Act var response = controller.GetNewsItem(1); var result = response as OkNegotiatedContentResult <NewsItemSend>; // Assert Assert.IsNotNull(result); Assert.IsNotNull(result.Content); // nit: might be a good idea to check if item corresponds to the one requested }
public void PutNewsItem_NoContent() { // Arrange var controller = new NewsItemsController(); // Act var response = (StatusCodeResult)controller.PutNewsItem(1, new XsollaSummerSchoolTest.NewsItem { Headline = "Test put", Body = "Test put", Category = "Test" }); // Assert Assert.AreEqual(HttpStatusCode.NoContent, response.StatusCode); }
public void PostRate_FailBadRequest() { // Arrange var controller = new NewsItemsController(); controller.Request = new HttpRequestMessage(); controller.Configuration = new HttpConfiguration(); // Act var response = controller.PostRate(2, 123); // Assert Assert.AreEqual(HttpStatusCode.BadRequest, response.StatusCode); }
public void PutNewsItem_NotFound() { // Arrange var controller = new NewsItemsController(); // Act var response = controller.PutNewsItem(-4, new XsollaSummerSchoolTest.NewsItem { Headline = "Test put", Body = "Test put", Category = "Test" }); var result = response as NotFoundResult; // Assert Assert.IsNotNull(result); }
public void PostRate_NotFound() { // Arrange var controller = new NewsItemsController(); controller.Request = new HttpRequestMessage(); controller.Configuration = new HttpConfiguration(); // Act var response = controller.PostRate(-3, 8); // Assert Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode); }
public void GetNewsItemsByCategory_OK() { // Arrange var controller = new NewsItemsController(); controller.Request = new HttpRequestMessage(); controller.Configuration = new HttpConfiguration(); // Act var response = controller.GetNewsItemSet("Искусство"); // Assert Assert.IsTrue(response.TryGetContentValue <IEnumerable <NewsItemSend> >(out var newsItems)); Assert.AreEqual("Искусство", newsItems.First().Category); }
public void GetAllNewsItems_OK() { // Arrange var controller = new NewsItemsController(); controller.Request = new HttpRequestMessage(); controller.Configuration = new HttpConfiguration(); // Act var response = controller.GetNewsItemSet(); // Assert Assert.IsTrue(response.TryGetContentValue <IEnumerable <NewsItemSend> >(out var newsItems)); // nit: might be a good idea to check at least the length of the array, not just the success of cast }
public void DeleteNewsItem_OK() { // Arrange var controller = new NewsItemsController(); controller.Request = new HttpRequestMessage(); controller.Configuration = new HttpConfiguration(); // Act var response = controller.DeleteNewsItem(1); var result = response as OkNegotiatedContentResult <NewsItemSend>; // Assert Assert.IsNotNull(result); }
public void DeleteNewsItem_FailNotFound() { // Arrange var controller = new NewsItemsController(); controller.Request = new HttpRequestMessage(); controller.Configuration = new HttpConfiguration(); // Act var response = controller.DeleteNewsItem(-1); var result = response as NotFoundResult; // Assert Assert.IsNotNull(result); }
public void GetAllNewsItems_OK() { // Arrange var controller = new NewsItemsController(); controller.Request = new HttpRequestMessage(); controller.Configuration = new HttpConfiguration(); // Act var response = controller.GetNewsItemSet(); IEnumerable <NewsItemSend> newsItems; // Assert Assert.IsTrue(response.TryGetContentValue <IEnumerable <NewsItemSend> >(out newsItems)); }
public void GetTopRatedNewsItems_OK() { // Arrange var controller = new NewsItemsController(); controller.Request = new HttpRequestMessage(); controller.Configuration = new HttpConfiguration(); double leastAverage = 7; // Act var response = controller.GetNewsItemSet(leastAverage); // Assert Assert.IsTrue(response.TryGetContentValue <IEnumerable <NewsItemSend> >(out var newsItems)); Assert.IsTrue(newsItems.First().TotalRate / newsItems.First().RateCount >= leastAverage); }
public void DeleteRate_FailNotFound() { // Arrange var controller = new NewsItemsController(); controller.Request = new HttpRequestMessage(); controller.Configuration = new HttpConfiguration(); controller.Request.Headers.Add("Cookie", "sessionString=i81S2pE4tJ5LV0F658HCXK2zF57M3L"); controller.Request.RequestUri = new Uri("https://localhost:44341/api/"); // Act var response = controller.DeleteRate(-1); // Assert Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode); }
public void PostRate_Ok() { // Arrange var controller = new NewsItemsController(); controller.Request = new HttpRequestMessage(); controller.Configuration = new HttpConfiguration(); controller.Request.Headers.Add("sessionString", "i71S2pE8tJ5LV0F658HCXK2zF57M3L"); controller.Request.RequestUri = new Uri("https://localhost:44341/api/"); // Act var response = controller.PostRate(2, 8); // Assert Assert.AreEqual(HttpStatusCode.OK, response.StatusCode); }
public void PutNewsItem_OK() // difficult to understand whether this test checks the scenario if a client behavior is correct { // Arrange var controller = new NewsItemsController(); // Act var response = (StatusCodeResult)controller.PutNewsItem(1, new NewsItem { Headline = "Test put", Body = "Test put", Category = "Test" }); // Assert Assert.AreEqual(HttpStatusCode.NoContent, response.StatusCode); // might be a good idea to check whether the operation was successful or not }
public void PostRate_OK() { // Arrange var controller = new NewsItemsController(); controller.Request = new HttpRequestMessage(); controller.Configuration = new HttpConfiguration(); controller.Request.Headers.Add("sessionString", "i71S2pE8tJ5LV0F658HCXK2zF57M3L"); // nit: might be a good idea to generate that one prior controller.Request.RequestUri = new Uri("https://localhost:44341/api/"); // Act var response = controller.PostRate(2, 8); // Assert Assert.AreEqual(HttpStatusCode.OK, response.StatusCode); // nit: might be a good idea to check if that rate changed anything }
public void PutNewsItem_FailBadRequest() { // Arrange var controller = new NewsItemsController(); controller.Request = new HttpRequestMessage(); controller.Configuration = new HttpConfiguration(); controller.ModelState.AddModelError("Body", "The Body field is required."); // Act var response = controller.PutNewsItem(1, new NewsItem { Headline = "Test put", Category = "Test" }); var result = response as InvalidModelStateResult; // Assert Assert.IsNotNull(result); }
public void PostNewsItem_CreatedAtRoute() { // Arrange var controller = new NewsItemsController(); controller.Request = new HttpRequestMessage(); controller.Configuration = new HttpConfiguration(); // Act var response = controller.PostNewsItem(new XsollaSummerSchoolTest.NewsItem { Headline = "Test post", Body = "Test post", Category = "Test" }); var result = response as CreatedAtRouteNegotiatedContentResult <NewsItemSend>; // Assert Assert.IsNotNull(result); Assert.AreEqual("DefaultApi", result.RouteName); Assert.IsNotNull(result.RouteValues["id"]); }