public async Task GetRemainingShipmentsHandler_GetFutureActiveMovementsNotCalled() { var request = new GetRemainingShipments(NotificationId); await handler.HandleAsync(request); A.CallTo(() => movementRepository.GetAllActiveMovements(NotificationId)) .MustNotHaveHappened(); }
public async Task GetRemainingShipmentsHandler_GetsFinancialGuaranteeCollection() { var request = new GetRemainingShipments(NotificationId); await handler.HandleAsync(request); A.CallTo(() => financialGuaranteeRepository.GetByNotificationId(NotificationId)) .MustHaveHappened(Repeated.Exactly.Once); }
public async Task GetRemainingShipmentsHandler_GetsAllMovements() { var request = new GetRemainingShipments(NotificationId); await handler.HandleAsync(request); A.CallTo(() => movementRepository.GetAllMovements(NotificationId)) .MustHaveHappened(Repeated.Exactly.Once); }
public async Task GetRemainingShipmentsHandler_NoApprovedFG_ReturnsZeroActiveLoadsPermitted() { var request = new GetRemainingShipments(NotificationId); var noApprovedFGActiveLoads = 0; A.CallTo(() => financialGuaranteeRepository.GetByNotificationId(NotificationId)) .Returns(GetFinancialGuarantee(FinancialGuaranteeStatus.ApplicationReceived)); var response = await handler.HandleAsync(request); Assert.Equal(noApprovedFGActiveLoads, response.ActiveLoadsPermitted); }
public async Task GetRemainingShipmentsHandler_ApprovedFG_ReturnsResponse() { var request = new GetRemainingShipments(NotificationId); A.CallTo(() => financialGuaranteeRepository.GetByNotificationId(NotificationId)) .Returns(GetFinancialGuarantee(FinancialGuaranteeStatus.Approved)); var response = await handler.HandleAsync(request); Assert.Equal(ActiveLoadsPermitted, response.ActiveLoadsPermitted); Assert.Equal(MaxNumberOfShipments - TotalMovements, response.ShipmentsRemaining); }
public async Task GetRemainingShipmentsHandler_ApprovedFG_ReturnsFutureShipmentByDate() { var futureShipmentsDate = Today.AddDays(10); var futureShipmentsTotal = ActiveLoadsPermitted - 5; var request = new GetRemainingShipments(NotificationId, futureShipmentsDate); A.CallTo(() => financialGuaranteeRepository.GetByNotificationId(NotificationId)) .Returns(GetFinancialGuarantee(FinancialGuaranteeStatus.Approved)); A.CallTo(() => movementRepository.GetAllActiveMovements(NotificationId)) .Returns(GetShipments(futureShipmentsTotal, futureShipmentsDate)); var response = await handler.HandleAsync(request); Assert.Equal(ActiveLoadsPermitted - futureShipmentsTotal, response.ActiveLoadsRemainingByDate); }