public void ByTelescope_WithNotExistingTelescopeId_ShouldReturnView() { // Arrange Mock <IPublicationService> publicationService = new Mock <IPublicationService>(); Mock <ITelescopeService> telescopeService = new Mock <ITelescopeService>(); ListPublicationsByTelescopeViewModel listModel = this.GetListPublicationsByTelescopeViewModel(); IEnumerable <ListPublicationsServiceModel> publications = null; publicationService .Setup(p => p.TotalByTelescope(It.IsAny <int>())) .Returns(20); publicationService .Setup(p => p.AllByTelescope(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <int>())) .Returns(publications); telescopeService .Setup(j => j.GetName(It.IsAny <int>())) .Returns("Test Name"); PublicationsController publicationsController = new PublicationsController(null, null, telescopeService.Object, publicationService.Object, null); // Act IActionResult result = publicationsController.ByTelescope(1, 2); // Assert Assert.IsType <BadRequestResult>(result); }
public IActionResult ByTelescope(int id, int page) { if (page <= 0) { page = 1; } int totalEntries = this.publicationService.TotalByTelescope(id); ListPublicationsByTelescopeViewModel model = new ListPublicationsByTelescopeViewModel { TelescopeId = id, TelescopeName = this.telescopeService.GetName(id), CurrentPage = page, TotalEntries = totalEntries, EntriesPerPage = PublicationsPerPage, Publications = this.publicationService.AllByTelescope(id, page, PublicationsPerPage) }; if (model.Publications == null) { return(BadRequest()); } return(View(model)); }
private void AssertListPublicationsByTelescopeViewModel(ListPublicationsByTelescopeViewModel expected, ListPublicationsByTelescopeViewModel actual) { Assert.Equal(expected.TelescopeId, expected.TelescopeId); Assert.Equal(expected.TelescopeName, expected.TelescopeName); this.AssertPublicationListServiceModel(expected.Publications.First(), actual.Publications.First()); this.AssertPublicationListServiceModel(expected.Publications.Last(), actual.Publications.Last()); }
public void ByTelescope_ShouldReturnView() { // Arrange Mock <IPublicationService> publicationService = new Mock <IPublicationService>(); Mock <ITelescopeService> telescopeService = new Mock <ITelescopeService>(); ListPublicationsByTelescopeViewModel listModel = this.GetListPublicationsByTelescopeViewModel(); publicationService .Setup(p => p.TotalByTelescope(It.IsAny <int>())) .Returns(20); publicationService .Setup(p => p.AllByTelescope(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <int>())) .Returns(this.GetPublications()); telescopeService .Setup(j => j.GetName(It.IsAny <int>())) .Returns("Journal Name"); PublicationsController publicationsController = new PublicationsController(null, null, telescopeService.Object, publicationService.Object, null); // Act IActionResult result = publicationsController.ByTelescope(1, 2); // Assert Assert.IsType <ViewResult>(result); object model = (result as ViewResult).Model; Assert.IsType <ListPublicationsByTelescopeViewModel>(model); ListPublicationsByTelescopeViewModel returnModel = model as ListPublicationsByTelescopeViewModel; this.AssertPages(listModel, returnModel); this.AssertListPublicationsByTelescopeViewModel(listModel, returnModel); }