public void TestIndexHasSearch() { dynamic controller = new IssuedItemsController(mock.Object); var viewResult = controller.Index(searchString: "Test") as ViewResult; List <IssuedItem> recordsReturned = (List <IssuedItem>)viewResult.Model; List <IssuedItem> allRecords = mock.Object.GetAllIssuedItems(); CollectionAssert.IsSubsetOf(recordsReturned, allRecords); }
public void TestEditCallsUpdate() { dynamic controller = new IssuedItemsController(mock.Object); mock.Setup(m => m.Update(It.IsAny <IssuedItem>())); controller.Edit(accessionRecords[0]); mock.Verify(m => m.Update(It.IsAny <IssuedItem>()), Times.Once); }
public void TestIndexHasPagination() { dynamic controller = new IssuedItemsController(mock.Object); var viewResult = controller.Index(page: 3) as ViewResult; List <IssuedItem> recordsReturned = (List <IssuedItem>)viewResult.Model; List <IssuedItem> allRecords = mock.Object.GetAllIssuedItems(); Assert.IsTrue(recordsReturned.Count <= 10); }
public void TestSetLateFeePaid() { dynamic controller = new IssuedItemsController(mock.Object); mock.Setup(m => m.Update(It.IsAny <IssuedItem>())); var result = controller.SetDateReturned(id: 1) as RedirectToRouteResult; mock.Verify(m => m.Update(It.IsAny <IssuedItem>()), Times.Once); Assert.AreEqual("Details", result.RouteValues["action"]); }
public void TestEditHasProperModel() { dynamic controller = new IssuedItemsController(mock.Object); var viewResult = controller.Edit(id: 1) as ViewResult; var model = viewResult.Model as IssuedItem; Assert.IsNotNull(model.AccessionRecord); Assert.IsNotNull(model.Member); Assert.IsNotNull(model.IssueDate); }
public void TestCreateHasProperModel() { dynamic controller = new IssuedItemsController(mock.Object); var result = controller.Create(itemid: 10) as ViewResult; var newRecord = result.Model as IssuedItem; Assert.IsNotNull(newRecord.IssueDate); Assert.IsNotNull(newRecord.AccessionRecord); Assert.IsNotNull(newRecord.Member); Assert.IsFalse(newRecord.IsReturned); }
public void TestReturnedIsSet() { dynamic controller = new IssuedItemsController(mock.Object); mock.Setup(m => m.Update(It.IsAny <IssuedItem>())); mock.Setup(m => m.GetById(It.IsAny <int>())).Returns(issuedItems[0]); var result = controller.SetReturned(id: 1) as RedirectToRouteResult; mock.Verify(m => m.Update(It.IsAny <IssuedItem>()), Times.Once); Assert.AreEqual("Details", result.RouteValues["action"]); Assert.AreEqual(issuedItems[0].IssuedItemId, result.RouteValues["id"]); }
public void TestCreateWorks() { // Set up a fake GetRandomIssuableAccRecord() and make sure it's called. // smock.Setup(m => m.GetRandomIssuableAccRecord()).Returns(accessionRecords[0]); var controller = new IssuedItemsController(mock.Object); IssuedItem toAdd = new IssuedItem { AccessionRecord = accessionRecords[0], Member = member, IssuedItemId = 15, IssueDate = DateTime.Now.Date }; controller.Create(toAdd); // Make sure that the Create method calls a GetAllIssueableAccRecords() mock.Verify(m => m.GetRandomIssuableAccRecord(It.IsAny <int>()), Times.Once); // Test that it calls the service.Add() method, which it doesn't by default mock.Verify(m => m.Add(It.IsAny <IssuedItem>()), Times.Once); }
public void TestIndexHasItems() { IssuedItemsController controller = new IssuedItemsController(mock.Object); var viewResult = controller.Index(searchString: "") as ViewResult; IEnumerable <IssuedItem> recordsReturned = (IEnumerable <IssuedItem>) viewResult.Model; // Note: I suppose this should only check against required properties, // but maybe checking all properties is a better idea, I don't know. foreach (var issuedItem in recordsReturned) { Assert.IsNotNull(issuedItem.IssueDate); Assert.IsNotNull(issuedItem.Member); Assert.IsNotNull(issuedItem.AccessionRecord); } }
public void TestCreateChecksMemberId() { var memberServiceMock = new Mock <IMemberService>(); dynamic controller = new IssuedItemsController(mock.Object, memberServiceMock.Object); IssuedItem itemToValidate = new IssuedItem() { AccessionRecord = accessionRecords[0], IssueDate = DateTime.Now.Date, Member = new Member() { MemberId = -1 } }; var result = controller.Create(itemToValidate) as ViewResult; // Make sure create calls GetMemberById memberServiceMock.Verify(m => m.GetMemberById(It.IsAny <int?>()), Times.Once); // Make sure that errors for the Member field exist Assert.IsNotNull(result.ViewData.ModelState["Member"].Errors); }
public void TestCreateTakesItemId() {// this should take an item id, not ar id. dynamic controller = new IssuedItemsController(mock.Object); controller.Create(itemid: 10); }