From d4165226e184db8d951da3bbeaa12d64ea1a06e0 Mon Sep 17 00:00:00 2001 From: cnathe Date: Mon, 15 Sep 2025 14:10:10 -0500 Subject: [PATCH] Move InventoryMetricUnit enum to testAutomation to share between LKS and apps --- .../experiment/InventoryMetricUnit.java | 50 +++++++++++++++++++ .../test/params/experiment/MetricUnit.java | 7 --- .../experiment/SampleTypeDefinition.java | 6 +-- src/org/labkey/test/tests/SampleTypeTest.java | 36 +------------ 4 files changed, 55 insertions(+), 44 deletions(-) create mode 100644 src/org/labkey/test/params/experiment/InventoryMetricUnit.java delete mode 100644 src/org/labkey/test/params/experiment/MetricUnit.java diff --git a/src/org/labkey/test/params/experiment/InventoryMetricUnit.java b/src/org/labkey/test/params/experiment/InventoryMetricUnit.java new file mode 100644 index 0000000000..d87a7242cd --- /dev/null +++ b/src/org/labkey/test/params/experiment/InventoryMetricUnit.java @@ -0,0 +1,50 @@ +package org.labkey.test.params.experiment; + +import org.apache.commons.lang3.StringUtils; + +/** + * Enum of the various storage amount types. + */ +public enum InventoryMetricUnit +{ + // If you add a value here you will also need to update SMSampleTypeDefinition.getInventoryMetricUnit. + G("g", "g (grams)"), + MG("mg", "mg (milligrams)"), + KG("kg", "kg (kilograms)"), + ML("mL", "mL (milliliters)"), + UL("uL", "uL (microliters)"), + L("L", "L (liters)"), + UNIT("unit", "unit"), + UNKNOWN("unknown", "unknown"); // Used by getInventoryMetricUnit. Return if an unknown value is in the UI. + + private final String _value; // Used when creating a sample type with the API and setting this property. + private final String _label; // Used when setting the property through the UI. + + InventoryMetricUnit(String value, String label) + { + _value = value; + _label = label; + } + + public String getLabel() + { + return _label; + } + + public String getValue() + { + return _value; + } + + public static String getStandardUnit(String unitString) + { + if (StringUtils.isEmpty(unitString)) + return unitString; + for (InventoryMetricUnit unit : values()) + { + if (unit.getValue().toLowerCase().equals(unitString)) + return unit.getValue(); + } + return unitString; + } +} diff --git a/src/org/labkey/test/params/experiment/MetricUnit.java b/src/org/labkey/test/params/experiment/MetricUnit.java deleted file mode 100644 index 00e4f943d3..0000000000 --- a/src/org/labkey/test/params/experiment/MetricUnit.java +++ /dev/null @@ -1,7 +0,0 @@ -package org.labkey.test.params.experiment; - -public interface MetricUnit -{ - String getLabel(); // For UI - String getValue(); // For API -} diff --git a/src/org/labkey/test/params/experiment/SampleTypeDefinition.java b/src/org/labkey/test/params/experiment/SampleTypeDefinition.java index f23fcf8d14..d7bda31aab 100644 --- a/src/org/labkey/test/params/experiment/SampleTypeDefinition.java +++ b/src/org/labkey/test/params/experiment/SampleTypeDefinition.java @@ -32,7 +32,7 @@ public class SampleTypeDefinition extends DomainProps private final Set _dataParentAliases = new HashSet<>(); // Currently, these values are only used by the SampleManager module. - private MetricUnit _inventoryMetricUnit; + private InventoryMetricUnit _inventoryMetricUnit; private String _labelColor; private String _aliquotNameExpression; @@ -96,12 +96,12 @@ public SampleTypeDefinition setLinkedDatasetCategory(String value) return this; } - protected MetricUnit getInventoryMetricUnit() + protected InventoryMetricUnit getInventoryMetricUnit() { return _inventoryMetricUnit; } - public SampleTypeDefinition setInventoryMetricUnit(MetricUnit inventoryMetricUnit) + public SampleTypeDefinition setInventoryMetricUnit(InventoryMetricUnit inventoryMetricUnit) { _inventoryMetricUnit = inventoryMetricUnit; return this; diff --git a/src/org/labkey/test/tests/SampleTypeTest.java b/src/org/labkey/test/tests/SampleTypeTest.java index 7d38be0fcb..a0a0f76e38 100644 --- a/src/org/labkey/test/tests/SampleTypeTest.java +++ b/src/org/labkey/test/tests/SampleTypeTest.java @@ -52,7 +52,7 @@ import org.labkey.test.params.FieldDefinition.ColumnType; import org.labkey.test.params.FieldDefinition.LookupInfo; import org.labkey.test.params.FieldInfo; -import org.labkey.test.params.experiment.MetricUnit; +import org.labkey.test.params.experiment.InventoryMetricUnit; import org.labkey.test.params.experiment.SampleTypeDefinition; import org.labkey.test.util.ApiPermissionsHelper; import org.labkey.test.util.AuditLogHelper; @@ -1868,7 +1868,7 @@ public void testAmountsAndUnitsWithDisplayUnit() clickProject(PROJECT_NAME); SampleTypeDefinition sampleTypeDefinition = new SampleTypeDefinition(sampleTypeName); - sampleTypeDefinition.setInventoryMetricUnit(TestMetricUnit.L); + sampleTypeDefinition.setInventoryMetricUnit(InventoryMetricUnit.L); SampleTypeAPIHelper.createEmptySampleType(getProjectName(), sampleTypeDefinition); refresh(); sampleHelper.goToSampleType(sampleTypeName); @@ -2068,36 +2068,4 @@ public BrowserType bestBrowser() { return BrowserType.CHROME; } - - public enum TestMetricUnit implements MetricUnit - { - G("g", "g (grams)"), - MG("mg", "mg (milligrams)"), - KG("kg", "kg (kilograms)"), - ML("mL", "mL (milliliters)"), - UL("uL", "uL (microliters)"), - L("L", "L (liters)"), - UNIT("unit", "unit"); - - private final String _value; - private final String _label; - - TestMetricUnit(String value, String label) - { - _value = value; - _label = label; - } - - @Override - public String getLabel() - { - return _label; - } - - @Override - public String getValue() - { - return _value; - } - } }