/// <summary> /// Converts an instance of CustomizedProduct into an instance of GetCustomizedProductModelView. /// </summary> /// <param name="customizedProduct">Instance of CustomizedProduct being converted.</param> /// <param name="unit">String representing the unit to which the CustomizedProduct's dimensions will be converted to.</param> /// <returns>Instance of GetCustomizedProductModelView.</returns> /// <exception cref="System.ArgumentException">Thrown when the provided instance of CustomizedProduct is null.</exception> public static GetCustomizedProductModelView fromEntity(CustomizedProduct customizedProduct, string unit) { if (customizedProduct == null) { throw new ArgumentException(ERROR_NULL_CUSTOMIZED_PRODUCT); } GetCustomizedProductModelView customizedProductModelView = new GetCustomizedProductModelView(); customizedProductModelView.customizedProductId = customizedProduct.Id; customizedProductModelView.reference = customizedProduct.reference; customizedProductModelView.designation = customizedProduct.designation; customizedProductModelView.status = customizedProduct.status; customizedProductModelView.customizedDimensions = CustomizedDimensionsModelViewService.fromEntity(customizedProduct.customizedDimensions, unit); if (customizedProduct.customizedMaterial != null) { customizedProductModelView.customizedMaterial = CustomizedMaterialModelViewService.fromEntity(customizedProduct.customizedMaterial); } customizedProductModelView.product = ProductModelViewService.fromEntityAsBasic(customizedProduct.product); customizedProductModelView.slots = SlotModelViewService.fromCollection(customizedProduct.slots, unit); return(customizedProductModelView); }
public void ensureFromEntityDoesNotConvertValuesIfNoUnitIsProvided() { double height = 30; double width = 50; double depth = 15; CustomizedDimensions customizedDimensions = CustomizedDimensions.valueOf(height, width, depth); GetCustomizedDimensionsModelView getCustomizedDimensionsModelView = CustomizedDimensionsModelViewService.fromEntity(customizedDimensions); Assert.Equal(getCustomizedDimensionsModelView.height, height); Assert.Equal(getCustomizedDimensionsModelView.width, width); Assert.Equal(getCustomizedDimensionsModelView.depth, depth); }
public void ensureFromEntityThrowsExceptionIfCustomizedDimensionsIsNull() { CustomizedDimensions customizedDimensions = null; Action fromEntity = () => CustomizedDimensionsModelViewService.fromEntity(customizedDimensions); Assert.Throws <ArgumentException>(fromEntity); //Make sure overload has the same behaviour fromEntity = () => CustomizedDimensionsModelViewService.fromEntity(customizedDimensions, "m"); Assert.Throws <ArgumentException>(fromEntity); }
public void ensureFromEntityConvertsValuesToProvidedUnit() { double height = 30; double width = 50; double depth = 15; CustomizedDimensions customizedDimensions = CustomizedDimensions.valueOf(height, width, depth); string unit = "m"; GetCustomizedDimensionsModelView getCustomizedDimensionsModelView = CustomizedDimensionsModelViewService.fromEntity(customizedDimensions, unit); Assert.Equal(getCustomizedDimensionsModelView.height, MeasurementUnitService.convertToUnit(height, unit)); Assert.Equal(getCustomizedDimensionsModelView.width, MeasurementUnitService.convertToUnit(width, unit)); Assert.Equal(getCustomizedDimensionsModelView.depth, MeasurementUnitService.convertToUnit(depth, unit)); }
/// <summary> /// Converts an instance of Slot into an instance of GetSlotModelView. /// </summary> /// <param name="slot">Instance of Slot being converted.</param> /// <param name="unit">String representing the unit to which the Slot's dimensions will be converted to.</param> /// <returns>Instance of GetSlotModelView.</returns> /// <exception cref="System.ArgumentException">Thrown when the provided instance of Slot is null.</exception> public static GetSlotModelView fromEntity(Slot slot, string unit) { if (slot == null) { throw new ArgumentException(ERROR_NULL_SLOT); } GetSlotModelView slotModelView = new GetSlotModelView(); slotModelView.slotId = slot.Id; slotModelView.slotDimensions = CustomizedDimensionsModelViewService.fromEntity(slot.slotDimensions, unit); if (slot.customizedProducts.Any()) { slotModelView.customizedProducts = CustomizedProductModelViewService.fromCollection(slot.customizedProducts); } return(slotModelView); }