Class BioAssayValueObjectTest

java.lang.Object
ubic.gemma.model.expression.bioAssay.BioAssayValueObjectTest

public class BioAssayValueObjectTest extends Object
The platform pair on a sample: what it is run on now, and what it was submitted on.

A dataset that has been switched to a generic platform keeps the submitted one in originalPlatform, and the two must not be conflated — telling a reader their RNA-seq dataset was submitted on Generic_mouse_ncbiIds erases the instrument it actually came from.

Author:
gemma
  • Constructor Details

    • BioAssayValueObjectTest

      public BioAssayValueObjectTest()
  • Method Details

    • authenticate

      @BeforeEach public void authenticate()
      ArrayDesignValueObject's constructor asks the security context what to expose, so a bare unit test needs an authentication even though nothing here is about authorization.
    • clearAuthentication

      @AfterEach public void clearAuthentication()
    • testOriginalPlatformIsNotTakenFromTheUsedPlatformsCacheEntry

      @Test public void testOriginalPlatformIsNotTakenFromTheUsedPlatformsCacheEntry()
      The regression. The VO takes a cache of already-built platform VOs, and the original-platform branch looked itself up under the USED platform's key: with a cache that held the used platform — which is what the samples route passes — every sample reported the platform it was switched TO as the one it was switched FROM. The DB was right the whole time, so ?filter=bioAssays.originalPlatform.* contradicted the serialized VO for the same dataset (uib, GSE217927, 2026-08-26).
    • testOriginalPlatformComesFromTheCacheWhenItIsThere

      @Test public void testOriginalPlatformComesFromTheCacheWhenItIsThere()
      And when the cache does know the original, it is reused rather than rebuilt.
    • testNoOriginalPlatformLeavesTheFieldNull

      @Test public void testNoOriginalPlatformLeavesTheFieldNull()
      No switch, no original — the field stays absent rather than echoing the used platform.