Exemplo n.º 1
0
 public static NotificationMovementsSummary Load(Guid notificationId,
                                                 string notificationNumber,
                                                 NotificationType notificationType,
                                                 int intendedTotalShipments,
                                                 int currentTotalShipments,
                                                 int activeLoadsPermitted,
                                                 int currentActiveLoads,
                                                 decimal intendedQuantity,
                                                 decimal quantityReceived,
                                                 ShipmentQuantityUnits units,
                                                 FinancialGuaranteeStatus financialGuaranteeStatus,
                                                 UKCompetentAuthority competentAuthority,
                                                 NotificationStatus notificationStatus,
                                                 ShipmentQuantity averageTonnageInfo)
 {
     return(new NotificationMovementsSummary
     {
         NotificationId = notificationId,
         NotificationNumber = notificationNumber,
         NotificationType = notificationType,
         IntendedTotalShipments = intendedTotalShipments,
         CurrentTotalShipments = currentTotalShipments,
         ActiveLoadsPermitted = activeLoadsPermitted,
         CurrentActiveLoads = currentActiveLoads,
         IntendedQuantity = intendedQuantity,
         QuantityReceived = quantityReceived,
         Units = units,
         FinancialGuaranteeStatus = financialGuaranteeStatus,
         CompetentAuthority = competentAuthority,
         NotificationStatus = notificationStatus,
         AverageDataUnit = averageTonnageInfo.Units,
         AverageTonnage = averageTonnageInfo.Quantity
     });
 }
 public ImportMovementReceipt(Guid movementId, ShipmentQuantity quantity, DateTime date)
 {
     MovementId = movementId;
     Quantity = quantity.Quantity;
     Unit = quantity.Units;
     Date = date;
 }
Exemplo n.º 3
0
 private List <ReceiptRecoveryMovement> GetTestData(ShipmentQuantityUnits unit)
 {
     return(new List <ReceiptRecoveryMovement>()
     {
         new ReceiptRecoveryMovement()
         {
             NotificationNumber = "GB 0001 001234",
             ShipmentNumber = 1,
             Unit = unit,
             Quantity = 1.1m
         },
         new ReceiptRecoveryMovement()
         {
             NotificationNumber = "GB 0001 001234",
             ShipmentNumber = 2,
             Unit = unit,
             Quantity = 1.1m
         },
         new ReceiptRecoveryMovement()
         {
             NotificationNumber = "GB 0001 001234",
             ShipmentNumber = 3,
             Unit = unit,
             Quantity = 10m
         }
     });
 }
Exemplo n.º 4
0
        public async Task <ImportMovementPartialRejection> PartailReject(Guid movementId,
                                                                         DateTime date,
                                                                         string reason,
                                                                         decimal actualQuantity,
                                                                         ShipmentQuantityUnits actualUnit,
                                                                         decimal rejectedQuantity,
                                                                         ShipmentQuantityUnits rejectedUnit,
                                                                         DateTime?wasteDisposedDate)
        {
            var movement = await movementRepository.Get(movementId);

            if (date < movement.ActualShipmentDate)
            {
                throw new InvalidOperationException("The when the waste was received date cannot be before the actual date of shipment.");
            }
            if (date > SystemTime.UtcNow.Date)
            {
                throw new InvalidOperationException("The when the waste was received date cannot be in the future.");
            }

            var partialRejection = movement.PartialReject(movementId, date, reason, actualQuantity, actualUnit, rejectedQuantity, rejectedUnit, wasteDisposedDate);

            importMovementPartailRejectionRepository.Add(partialRejection);

            return(partialRejection);
        }
Exemplo n.º 5
0
 public RecordReceiptInternal(Guid movementId, DateTime receivedDate, decimal actualQuantity, ShipmentQuantityUnits units)
 {
     MovementId     = movementId;
     ReceivedDate   = receivedDate;
     ActualQuantity = actualQuantity;
     Units          = units;
 }
        private ShipmentInfo GetTestShipmentInfo(ShipmentQuantityUnits unit)
        {
            var shipmentPeriod   = new ShipmentPeriod(DateTime.Now, DateTime.Now.AddMonths(12), true);
            var shipmentQuantity = new ShipmentQuantity(1.0m, unit);

            return(new ShipmentInfo(notificationId, shipmentPeriod, 100, shipmentQuantity));
        }
Exemplo n.º 7
0
 public ImportMovementReceipt(Guid movementId, ShipmentQuantity quantity, DateTime date)
 {
     MovementId = movementId;
     Quantity   = quantity.Quantity;
     Unit       = quantity.Units;
     Date       = date;
 }
Exemplo n.º 8
0
 public TempMovement(int numberToCreate, DateTime shipmentDate, decimal quantity,
                     ShipmentQuantityUnits shipmentQuantityUnits, IList <PackagingType> packagingTypes)
 {
     NumberToCreate        = numberToCreate;
     ShipmentDate          = shipmentDate;
     Quantity              = quantity;
     ShipmentQuantityUnits = shipmentQuantityUnits;
     PackagingTypes        = packagingTypes;
 }
        public void Equals_SameQuantityAndUnit_ReturnsTrue(string quantity, ShipmentQuantityUnits unit)
        {
            var decimalQuantity = Convert.ToDecimal(quantity);

            var unit1 = new ShipmentQuantity(decimalQuantity, unit);
            var unit2 = new ShipmentQuantity(decimalQuantity, unit);

            Assert.True(unit1.Equals(unit2));
        }
Exemplo n.º 10
0
        public void Equals_SameQuantityAndUnit_ReturnsTrue(string quantity, ShipmentQuantityUnits unit)
        {
            var decimalQuantity = Convert.ToDecimal(quantity);

            var unit1 = new ShipmentQuantity(decimalQuantity, unit);
            var unit2 = new ShipmentQuantity(decimalQuantity, unit);

            Assert.True(unit1.Equals(unit2));
        }
Exemplo n.º 11
0
        public void Add_SameUnitType_ReturnsExpected(ShipmentQuantityUnits unit)
        {
            var unit1 = new ShipmentQuantity(1, unit);
            var unit2 = new ShipmentQuantity(2, unit);

            var expected = new ShipmentQuantity(3, unit);

            Assert.Equal(expected, unit1 + unit2);
        }
        public void Add_SameUnitType_ReturnsExpected(ShipmentQuantityUnits unit)
        {
            var unit1 = new ShipmentQuantity(1, unit);
            var unit2 = new ShipmentQuantity(2, unit);

            var expected = new ShipmentQuantity(3, unit);

            Assert.Equal(expected, unit1 + unit2);
        }
Exemplo n.º 13
0
 public RecordReceipt(Guid importMovementId,
                      DateTime date,
                      ShipmentQuantityUnits unit,
                      decimal quantity)
 {
     ImportMovementId = importMovementId;
     Date             = date;
     Unit             = unit;
     Quantity         = quantity;
 }
Exemplo n.º 14
0
 public CreateMovements(Guid notificationId, int numberToCreate, DateTime actualMovementDate,
                        decimal quantity, ShipmentQuantityUnits units, IList <PackagingType> packagingTypes)
 {
     NotificationId     = notificationId;
     NumberToCreate     = numberToCreate;
     ActualMovementDate = actualMovementDate;
     Quantity           = quantity;
     Units          = units;
     PackagingTypes = packagingTypes;
 }
Exemplo n.º 15
0
        public static decimal ConvertToTarget(ShipmentQuantityUnits source, ShipmentQuantityUnits target, decimal value, bool throwOnLossOfPrecision = true)
        {
            if (source == target)
            {
                return(value);
            }

            if (ShipmentQuantityUnitsMetadata.IsWeightUnit(source) && ShipmentQuantityUnitsMetadata.IsVolumeUnit(target))
            {
                ThrowOnInvalidConversion(source, target);
            }

            if (ShipmentQuantityUnitsMetadata.IsVolumeUnit(source) && ShipmentQuantityUnitsMetadata.IsWeightUnit(target))
            {
                ThrowOnInvalidConversion(source, target);
            }

            if (source == ShipmentQuantityUnits.Tonnes && target == ShipmentQuantityUnits.Kilograms)
            {
                return(TonnesToKilograms(value));
            }

            if (source == ShipmentQuantityUnits.CubicMetres && target == ShipmentQuantityUnits.Litres)
            {
                return(CubicMetersToLitres(value));
            }

            if (source == ShipmentQuantityUnits.Kilograms && target == ShipmentQuantityUnits.Tonnes)
            {
                var convertedValue = KilogramsToTonnes(value);

                if (WouldLosePrecision(convertedValue, throwOnLossOfPrecision))
                {
                    ThrowOnPrecisionLoss(source, target, value);
                }

                return(convertedValue);
            }

            if (source == ShipmentQuantityUnits.Litres && target == ShipmentQuantityUnits.CubicMetres)
            {
                var convertedValue = LitresToCubicMeters(value);

                if (WouldLosePrecision(convertedValue, throwOnLossOfPrecision))
                {
                    ThrowOnPrecisionLoss(source, target, value);
                }

                return(convertedValue);
            }

            ThrowOnInvalidConversion(source, target);

            throw new InvalidOperationException();
        }
        public static decimal ConvertToTarget(ShipmentQuantityUnits source, ShipmentQuantityUnits target, decimal value, bool throwOnLossOfPrecision = true)
        {
            if (source == target)
            {
                return value;
            }

            if (ShipmentQuantityUnitsMetadata.IsWeightUnit(source) && ShipmentQuantityUnitsMetadata.IsVolumeUnit(target))
            {
                ThrowOnInvalidConversion(source, target);
            }

            if (ShipmentQuantityUnitsMetadata.IsVolumeUnit(source) && ShipmentQuantityUnitsMetadata.IsWeightUnit(target))
            {
                ThrowOnInvalidConversion(source, target);
            }

            if (source == ShipmentQuantityUnits.Tonnes && target == ShipmentQuantityUnits.Kilograms)
            {
                return TonnesToKilograms(value);
            }

            if (source == ShipmentQuantityUnits.CubicMetres && target == ShipmentQuantityUnits.Litres)
            {
                return CubicMetersToLitres(value);
            }

            if (source == ShipmentQuantityUnits.Kilograms && target == ShipmentQuantityUnits.Tonnes)
            {
                var convertedValue = KilogramsToTonnes(value);

                if (WouldLosePrecision(convertedValue, throwOnLossOfPrecision))
                {
                    ThrowOnPrecisionLoss(source, target, value);
                }

                return convertedValue;
            }

            if (source == ShipmentQuantityUnits.Litres && target == ShipmentQuantityUnits.CubicMetres)
            {
                var convertedValue = LitresToCubicMeters(value);

                if (WouldLosePrecision(convertedValue, throwOnLossOfPrecision))
                {
                    ThrowOnPrecisionLoss(source, target, value);
                }

                return convertedValue;
            }

            ThrowOnInvalidConversion(source, target);

            throw new InvalidOperationException();
        }
 public void CheckLosingPrecisionThrows(ShipmentQuantityUnits source, ShipmentQuantityUnits target, decimal value)
 {
     try
     {
         ShipmentQuantityUnitConverter.ConvertToTarget(source, target, value);
     }
     catch (InvalidOperationException ex)
     {
         Assert.Contains("would lose precision", ex.Message);
     }
 }
Exemplo n.º 18
0
        public void Equals_UnconvertableUnits_ReturnsFalse(string quantity1, ShipmentQuantityUnits unit1,
                                                           string quantity2, ShipmentQuantityUnits unit2)
        {
            var decimalQuantity1 = Convert.ToDecimal(quantity1);
            var decimalQuantity2 = Convert.ToDecimal(quantity2);

            var shipmentUnit1 = new ShipmentQuantity(decimalQuantity1, unit1);
            var shipmentUnit2 = new ShipmentQuantity(decimalQuantity2, unit2);

            Assert.False(shipmentUnit1.Equals(shipmentUnit2));
        }
 public void CheckInvalidConversions(ShipmentQuantityUnits source, ShipmentQuantityUnits target)
 {
     try
     {
         ShipmentQuantityUnitConverter.ConvertToTarget(source, target, 10);
     }
     catch (ArgumentException ex)
     {
         Assert.Contains("Cannot convert type", ex.Message);
     }
 }
Exemplo n.º 20
0
        public void Equals_EquivalentQuantity_ReturnsTrue(string quantity1, ShipmentQuantityUnits unit1,
                                                          string quantity2, ShipmentQuantityUnits unit2)
        {
            var decimalQuantity1 = Convert.ToDecimal(quantity1);
            var decimalQuantity2 = Convert.ToDecimal(quantity2);

            var shipmentUnit1 = new ShipmentQuantity(decimalQuantity1, unit1);
            var shipmentUnit2 = new ShipmentQuantity(decimalQuantity2, unit2);

            Assert.True(shipmentUnit1.Equals(shipmentUnit2));
        }
        public void Equals_EquivalentQuantity_ReturnsTrue(string quantity1, ShipmentQuantityUnits unit1,
            string quantity2, ShipmentQuantityUnits unit2)
        {
            var decimalQuantity1 = Convert.ToDecimal(quantity1);
            var decimalQuantity2 = Convert.ToDecimal(quantity2);

            var shipmentUnit1 = new ShipmentQuantity(decimalQuantity1, unit1);
            var shipmentUnit2 = new ShipmentQuantity(decimalQuantity2, unit2);

            Assert.True(shipmentUnit1.Equals(shipmentUnit2));
        }
Exemplo n.º 22
0
        public void LessThan_ConvertableUnitType_ReturnsTrue(string quantity1, ShipmentQuantityUnits units1,
                                                             string quantity2, ShipmentQuantityUnits units2)
        {
            var decimalQuantity1 = Convert.ToDecimal(quantity1);
            var decimalQuantity2 = Convert.ToDecimal(quantity2);

            var unit1 = new ShipmentQuantity(decimalQuantity1, units1);
            var unit2 = new ShipmentQuantity(decimalQuantity2, units2);

            Assert.True(unit1 < unit2);
        }
        public void Equals_UnconvertableUnits_ReturnsFalse(string quantity1, ShipmentQuantityUnits unit1,
            string quantity2, ShipmentQuantityUnits unit2)
        {
            var decimalQuantity1 = Convert.ToDecimal(quantity1);
            var decimalQuantity2 = Convert.ToDecimal(quantity2);

            var shipmentUnit1 = new ShipmentQuantity(decimalQuantity1, unit1);
            var shipmentUnit2 = new ShipmentQuantity(decimalQuantity2, unit2);

            Assert.False(shipmentUnit1.Equals(shipmentUnit2));
        }
Exemplo n.º 24
0
 public RecordRejection(Guid importMovementId,
                        DateTime date,
                        string reason,
                        decimal rejectedQuantity,
                        ShipmentQuantityUnits rejectedUnits)
 {
     ImportMovementId = importMovementId;
     Date             = date;
     Reason           = reason;
     RejectedQuantity = rejectedQuantity;
     RejectedUnits    = rejectedUnits;
 }
        public void Add_ConvertableUnitType_ReturnsExpected(string quantity1, ShipmentQuantityUnits units1, string quantity2, ShipmentQuantityUnits units2, string expected)
        {
            var decimalQuantity1 = Convert.ToDecimal(quantity1);
            var decimalQuantity2 = Convert.ToDecimal(quantity2);
            var decimalExpected = Convert.ToDecimal(expected);

            var unit1 = new ShipmentQuantity(decimalQuantity1, units1);
            var unit2 = new ShipmentQuantity(decimalQuantity2, units2);

            var expectedUnit = new ShipmentQuantity(decimalExpected, units1);

            Assert.Equal(expectedUnit, unit1 + unit2);
        }
Exemplo n.º 26
0
        public void Add_ConvertableUnitType_ReturnsExpected(string quantity1, ShipmentQuantityUnits units1, string quantity2, ShipmentQuantityUnits units2, string expected)
        {
            var decimalQuantity1 = Convert.ToDecimal(quantity1);
            var decimalQuantity2 = Convert.ToDecimal(quantity2);
            var decimalExpected  = Convert.ToDecimal(expected);

            var unit1 = new ShipmentQuantity(decimalQuantity1, units1);
            var unit2 = new ShipmentQuantity(decimalQuantity2, units2);

            var expectedUnit = new ShipmentQuantity(decimalExpected, units1);

            Assert.Equal(expectedUnit, unit1 + unit2);
        }
 public SetIntendedShipmentInfoForNotification(Guid notificationId,
                                               int numberOfShipments,
                                               decimal quantity,
                                               ShipmentQuantityUnits units,
                                               DateTime startDate,
                                               DateTime endDate)
 {
     NotificationId    = notificationId;
     NumberOfShipments = numberOfShipments;
     Quantity          = quantity;
     Units             = units;
     StartDate         = startDate;
     EndDate           = endDate;
 }
Exemplo n.º 28
0
 public SetMovementAccepted(Guid movementId,
                            Guid fileId,
                            DateTime dateReceived,
                            decimal quantity,
                            ShipmentQuantityUnits units,
                            DateTime auditDate)
 {
     MovementId   = movementId;
     FileId       = fileId;
     DateReceived = dateReceived;
     Quantity     = quantity;
     Units        = units;
     AuditDate    = auditDate;
 }
Exemplo n.º 29
0
        internal ImportMovementPartialRejection PartialReject(Guid movementId,
                                                              DateTime rejectionDate,
                                                              string reason,
                                                              decimal actualQuantity,
                                                              ShipmentQuantityUnits actualUnit,
                                                              decimal rejectedQuantity,
                                                              ShipmentQuantityUnits rejectedUnit,
                                                              DateTime?wasteDisposedDate)
        {
            Guard.ArgumentNotDefaultValue(() => rejectionDate, rejectionDate);
            Guard.ArgumentNotDefaultValue(() => reason, reason);

            var rejection = new ImportMovementPartialRejection(movementId, rejectionDate, reason, actualQuantity, actualUnit, rejectedQuantity, rejectedUnit, wasteDisposedDate);

            return(rejection);
        }
 public ImportMovementSummary(ImportMovement movement, 
     ImportMovementReceipt receipt, 
     ImportMovementRejection rejection, 
     ImportMovementCompletedReceipt completedReceipt, 
     NotificationType notificationType, 
     string notificationNumber,
     ShipmentQuantityUnits units)
 {
     Movement = movement;
     Receipt = receipt;
     Rejection = rejection;
     CompletedReceipt = completedReceipt;
     NotificationType = notificationType;
     NotificationNumber = notificationNumber;
     Units = units;
 }
Exemplo n.º 31
0
 public ImportMovementSummary(ImportMovement movement,
                              ImportMovementReceipt receipt,
                              ImportMovementRejection rejection,
                              ImportMovementCompletedReceipt completedReceipt,
                              NotificationType notificationType,
                              string notificationNumber,
                              ShipmentQuantityUnits units)
 {
     Movement           = movement;
     Receipt            = receipt;
     Rejection          = rejection;
     CompletedReceipt   = completedReceipt;
     NotificationType   = notificationType;
     NotificationNumber = notificationNumber;
     Units = units;
 }
Exemplo n.º 32
0
 public DraftMovement(Guid draftMovementId,
                      string notificationNumber,
                      int shipmentNumber,
                      DateTime?receivedDate,
                      decimal quantity,
                      ShipmentQuantityUnits units,
                      DateTime?recoveredDisposedDate)
 {
     BulkUploadId       = draftMovementId;
     NotificationNumber = notificationNumber;
     ShipmentNumber     = shipmentNumber;
     ReceivedDate       = receivedDate;
     Quantity           = quantity;
     Units = units;
     RecoveredDisposedDate = recoveredDisposedDate;
 }
Exemplo n.º 33
0
        public DraftMovement(Guid draftMovementId,
                             string notificationNumber,
                             int shipmentNumber,
                             decimal quantity,
                             ShipmentQuantityUnits units,
                             DateTime date,
                             ICollection <DraftPackagingInfo> packagingInfos)
        {
            BulkUploadId       = draftMovementId;
            NotificationNumber = notificationNumber;
            ShipmentNumber     = shipmentNumber;
            Quantity           = quantity;
            Units = units;
            Date  = date;

            PackagingInfosCollection = packagingInfos;
        }
Exemplo n.º 34
0
        public string QuantityToStringWithUnits(decimal? quantity, ShipmentQuantityUnits? units)
        {
            if (!quantity.HasValue || !units.HasValue)
            {
                return string.Empty;
            }

            switch (units.Value)
            {
                case ShipmentQuantityUnits.Kilograms:
                    return quantity.Value.ToString(FormatString) + " kg";
                case ShipmentQuantityUnits.Litres:
                    return quantity.Value.ToString(FormatString) + " Ltrs";
                default:
                    return quantity.Value.ToString(FormatString);
            }
        }
 public RecordPartialRejectionInternal(Guid movementId,
                                       DateTime wasteReceivedDate,
                                       string reason,
                                       decimal actualQuantity,
                                       ShipmentQuantityUnits actualUnits,
                                       decimal rejectedQuantity,
                                       ShipmentQuantityUnits rejectedUnits,
                                       DateTime?wasteDisposedDate)
 {
     MovementId        = movementId;
     WasteReceivedDate = wasteReceivedDate;
     Reason            = reason;
     ActualQuantity    = actualQuantity;
     ActualUnits       = actualUnits;
     RejectedQuantity  = rejectedQuantity;
     RejectedUnits     = rejectedUnits;
     WasteDisposedDate = wasteDisposedDate;
 }
        public static void ApplyStrikethroughFormattingToUnits(WordprocessingDocument document,
            ShipmentQuantityUnits unitsToDisplay)
        {
            var tonnesField = RunLocator.SingleRunByContent(document, TonnesFieldName);
            var cubicMetresField = RunLocator.SingleRunByContent(document, CubicMetresFieldName);

            if (unitsToDisplay != ShipmentQuantityUnits.Tonnes)
            {
                tonnesField.AppendChild(GetStrikethroughRunProperties());
            }

            if (unitsToDisplay != ShipmentQuantityUnits.CubicMetres)
            {
                cubicMetresField.AppendChild(GetStrikethroughRunProperties());
            }

            ReplacePlaceholderText(tonnesField, TonnesFieldText);
            ReplacePlaceholderText(cubicMetresField, CubicMetresFieldText);
        }
Exemplo n.º 37
0
        public static void ApplyStrikethroughFormattingToUnits(WordprocessingDocument document,
                                                               ShipmentQuantityUnits unitsToDisplay)
        {
            var tonnesField      = RunLocator.SingleRunByContent(document, TonnesFieldName);
            var cubicMetresField = RunLocator.SingleRunByContent(document, CubicMetresFieldName);

            if (unitsToDisplay != ShipmentQuantityUnits.Tonnes)
            {
                tonnesField.AppendChild(GetStrikethroughRunProperties());
            }

            if (unitsToDisplay != ShipmentQuantityUnits.CubicMetres)
            {
                cubicMetresField.AppendChild(GetStrikethroughRunProperties());
            }

            ReplacePlaceholderText(tonnesField, TonnesFieldText);
            ReplacePlaceholderText(cubicMetresField, CubicMetresFieldText);
        }
Exemplo n.º 38
0
        public ImportMovementPartialRejection(Guid movementId,
                                              DateTime wasteReceivedDate,
                                              string reason,
                                              decimal actualQuantity,
                                              ShipmentQuantityUnits actualUnit,
                                              decimal rejectedQuantity,
                                              ShipmentQuantityUnits rejectedUnit,
                                              DateTime?wasteDisposedDate)
        {
            Guard.ArgumentNotNullOrEmpty(() => reason, reason);

            MovementId        = movementId;
            WasteReceivedDate = wasteReceivedDate;
            Reason            = reason;
            ActualQuantity    = actualQuantity;
            ActualUnit        = actualUnit;
            RejectedQuantity  = rejectedQuantity;
            RejectedUnit      = rejectedUnit;
            WasteDisposedDate = wasteDisposedDate;
        }
 private static List <PrenotificationMovement> GetTestData(ShipmentQuantityUnits unit)
 {
     return(new List <PrenotificationMovement>()
     {
         new PrenotificationMovement()
         {
             NotificationNumber = "GB 0001 001234",
             ShipmentNumber = 1,
             Unit = unit
         },
         new PrenotificationMovement()
         {
             NotificationNumber = "GB 0001 001234",
             ShipmentNumber = 2,
             Unit = unit
         },
         new PrenotificationMovement()
         {
             NotificationNumber = "GB 0001 001234",
             ShipmentNumber = 3,
             Unit = unit
         }
     });
 }
 public void CheckInvalidConversions(ShipmentQuantityUnits source, ShipmentQuantityUnits target)
 {
     try
     {
         ShipmentQuantityUnitConverter.ConvertToTarget(source, target, 10);
     }
     catch (ArgumentException ex)
     {
         Assert.Contains("Cannot convert type", ex.Message);
     }
 }
 public static IEnumerable<ShipmentQuantityUnits> GetUnitsOfThisType(ShipmentQuantityUnits unit)
 {
     return (IsWeightUnit(unit))
         ? WeightUnits
         : VolumeUnits;
 }
        public async Task ReturnsExpectedResult(int quantity, ShipmentQuantityUnits units, QuantityReceivedTolerance expected)
        {
            var result = await handler.HandleAsync(new DoesQuantityReceivedExceedTolerance(Guid.Empty, quantity, units));

            Assert.Equal(expected, result);
        }
 public void CheckLosingPrecisionThrows(ShipmentQuantityUnits source, ShipmentQuantityUnits target, decimal value)
 {
     try
     {
         ShipmentQuantityUnitConverter.ConvertToTarget(source, target, value);
     }
     catch (InvalidOperationException ex)
     {
         Assert.Contains("would lose precision", ex.Message);
     }
 }
        public void LessThanOrEquals_ConvertableUnitType_ReturnsTrue(string quantity1, ShipmentQuantityUnits units1,
            string quantity2, ShipmentQuantityUnits units2)
        {
            var decimalQuantity1 = Convert.ToDecimal(quantity1);
            var decimalQuantity2 = Convert.ToDecimal(quantity2);

            var unit1 = new ShipmentQuantity(decimalQuantity1, units1);
            var unit2 = new ShipmentQuantity(decimalQuantity2, units2);

            Assert.True(unit1 <= unit2);
        }
Exemplo n.º 45
0
 public HasExceededConsentedQuantity(Guid notificationId, decimal quantity, ShipmentQuantityUnits units)
 {
     NotificationId = notificationId;
     Quantity       = quantity;
     Units          = units;
 }
Exemplo n.º 46
0
 public ShipmentQuantity(decimal quantity, ShipmentQuantityUnits units)
 {
     Quantity = decimal.Round(quantity, ShipmentQuantityUnitsMetadata.Precision[units]);
     Units = units;
 }
 public void CanTurnThrowOnLossOfPrecisionOff(ShipmentQuantityUnits source, ShipmentQuantityUnits target,
     decimal value)
 {
     Assert.Equal(value / 1000, ShipmentQuantityUnitConverter.ConvertToTarget(source, target, value, false));
 }
 public void CheckWorkingConversions(ShipmentQuantityUnits source, ShipmentQuantityUnits target, decimal value, decimal result)
 {
     Assert.Equal(result, ShipmentQuantityUnitConverter.ConvertToTarget(source, target, value));
 }
 public static bool IsVolumeUnit(ShipmentQuantityUnits unit)
 {
     return VolumeUnits.Contains(unit);
 }
 public void ConvertToSameType(ShipmentQuantityUnits sourceAndTarget)
 {
     Assert.Equal(10, ShipmentQuantityUnitConverter.ConvertToTarget(sourceAndTarget, sourceAndTarget, 10));
 }
 public static bool IsWeightUnit(ShipmentQuantityUnits unit)
 {
     return WeightUnits.Contains(unit);
 }
Exemplo n.º 52
0
 public QuantityViewModel(ShipmentQuantityUnits notificationShipmentUnits, int movementNumber)
 {
     MovementNumber = movementNumber;
     NotificationUnits = notificationShipmentUnits;
     AvailableUnits = ShipmentQuantityUnitsMetadata.GetUnitsOfThisType(notificationShipmentUnits).ToList();
 }