Class GeoCharacteristicParseTest

java.lang.Object
ubic.gemma.core.loader.expression.geo.GeoCharacteristicParseTest

public class GeoCharacteristicParseTest extends Object
Pins what GeoConverterImpl.parseGEOSampleCharacteristicString(String, BioMaterial) makes of a submitter's sample descriptor string.

🛑 The value assertions here changed in 9271945de2. GEO import no longer maps submitter text onto preset ontology terms from valueStringToOntologyTermMappings.txt, so "Sex: M" keeps the value "M" instead of being rewritten to "male" / PATO_0000384, and every value URI on this path is now null. Grounding a value is a curation decision. The CATEGORY assertions are unaffected: those come from convertVariableType(), which reads GEO's own variable type and was never part of the preset mapping.

Author:
paul
  • Constructor Details

    • GeoCharacteristicParseTest

      public GeoCharacteristicParseTest()
  • Method Details

    • testBlankValueParsesToNullNotAnEmptyString

      @Test public final void testBlankValueParsesToNullNotAnEmptyString()
      🛑 A submitter who writes "Strain:" with nothing after the colon has given a category and no value. That is ABSENCE, and the column spells absence NULL — an empty string is a value that happens to be empty, and the corpus said it both ways: 8,141 rows as '' against 24 as NULL, so WHERE VALUE IS NULL was missing 99.7% of them until they were normalized on 2026-09-10 (cab). The import used to write the losing spelling. ORIGINAL_VALUE still carries the unsplit line.
    • testParseGEOSampleCharacteristic

      @Test public final void testParseGEOSampleCharacteristic() throws Exception
      Throws:
      Exception