public void RetrieveItem_Valid() { // Arrange var expectedId = "RETCONTROLTEST"; var expectedStatus = new StatusService(context).FindStatusByStatusId(18); retrievalRepository.Save(new Retrieval() { RetrievalId = expectedId, CreatedDateTime = DateTime.Now, Status = new StatusService(context).FindStatusByStatusId(12), Disbursements = new List <Disbursement>() { new Disbursement() { DisbursementId = expectedId, Department = new DepartmentService(context).FindDepartmentByDepartmentCode("ENGL"), CreatedDateTime = DateTime.Now, Status = new StatusService(context).FindStatusByStatusId(7), DisbursementDetails = new List <DisbursementDetail>() { new DisbursementDetail() { DisbursementId = expectedId, Item = new ItemService(context).FindItemByItemCode("E030"), Bin = "E78", PlanQuantity = 30, ActualQuantity = 30, Status = new StatusService(context).FindStatusByStatusId(17), ItemCode = "E030", } } } } }); var controller = new RetrievalAPIController() { Request = new HttpRequestMessage(), Configuration = new HttpConfiguration(), Context = context, }; // Act IHttpActionResult actionResult = controller.RetrieveItem(new ConfirmRetrievalViewModel() { RetrievalId = expectedId, Email = "*****@*****.**", ItemCode = "E030", }); var contentResult = actionResult as OkNegotiatedContentResult <MessageViewModel>; // Assert Assert.IsNotNull(contentResult); Assert.IsNotNull(contentResult.Content); Assert.AreEqual(contentResult.Content.Message, "Successfully retrieved"); var result = new DisbursementDetailRepository(context).FindById(expectedId, "E030"); Assert.AreEqual(expectedStatus.Name, result.Status.Name); }
public void RetrieveItem_AlreadyRetrieved_BadRequest() { // Arrange var expectedId = "RETCONTROLTEST"; retrievalRepository.Save(new Retrieval() { RetrievalId = expectedId, CreatedDateTime = DateTime.Now, Status = new StatusService(context).FindStatusByStatusId(12), Disbursements = new List <Disbursement>() { new Disbursement() { DisbursementId = expectedId, Department = new DepartmentService(context).FindDepartmentByDepartmentCode("ENGL"), CreatedDateTime = DateTime.Now, Status = new StatusService(context).FindStatusByStatusId(7), DisbursementDetails = new List <DisbursementDetail>() { new DisbursementDetail() { DisbursementId = expectedId, Item = new ItemService(context).FindItemByItemCode("E030"), Bin = "E78", PlanQuantity = 30, ActualQuantity = 30, Status = new StatusService(context).FindStatusByStatusId(18), ItemCode = "E030", } } } } }); var controller = new RetrievalAPIController() { Request = new HttpRequestMessage(), Configuration = new HttpConfiguration(), Context = context, }; // Act IHttpActionResult actionResult = controller.RetrieveItem(new ConfirmRetrievalViewModel() { RetrievalId = expectedId, Email = "*****@*****.**", ItemCode = "E030", }); BadRequestErrorMessageResult badRequest = actionResult as BadRequestErrorMessageResult; // Assert Assert.IsInstanceOfType(actionResult, typeof(BadRequestErrorMessageResult)); Assert.AreEqual("Item already retrieved", badRequest.Message); }
public void UpdateActualQuantity_DoesNotExist_BadRequest() { // Arrange var controller = new RetrievalAPIController() { Request = new HttpRequestMessage(), Configuration = new HttpConfiguration(), Context = context, }; // Act IHttpActionResult actionResult = controller.RetrieveItem(new ConfirmRetrievalViewModel() { RetrievalId = "RETCONTROLTEST", Email = "*****@*****.**", ItemCode = "E030", }); BadRequestErrorMessageResult badRequest = actionResult as BadRequestErrorMessageResult; // Assert Assert.IsInstanceOfType(actionResult, typeof(BadRequestErrorMessageResult)); Assert.AreEqual("Retrieval does not exist", badRequest.Message); }