From 7542fb6eb849d47c28b3a0382d6727103233b4d3 Mon Sep 17 00:00:00 2001 From: XingY Date: Tue, 30 Jun 2026 21:36:05 -0700 Subject: [PATCH] GitHub Issue 1117: sample type and dataclass foreign keys --- src/org/labkey/test/tests/DataClassTest.java | 1 + .../tests/SampleTypeFolderExportImportTest.java | 13 +++++++++++++ src/org/labkey/test/tests/SampleTypeTest.java | 1 + 3 files changed, 15 insertions(+) diff --git a/src/org/labkey/test/tests/DataClassTest.java b/src/org/labkey/test/tests/DataClassTest.java index 2e77ea4cee..0f0a6979ce 100644 --- a/src/org/labkey/test/tests/DataClassTest.java +++ b/src/org/labkey/test/tests/DataClassTest.java @@ -291,6 +291,7 @@ public void testFieldUniqueConstraint() createPage.clickSave(); viewRawTableMetadata(dataClassName); + assertTextPresentCaseInsensitive("fk_rowid_"); // GitHub Issue 1117 verifyTableIndices("unique_constraint_test_", List.of("field_Name1", "fieldName_2")); assertTextNotPresent("unique_constraint_test_fieldname_3"); verifyTableIndexNonUnique("unique_constraint_test_", "field_Name1", true); diff --git a/src/org/labkey/test/tests/SampleTypeFolderExportImportTest.java b/src/org/labkey/test/tests/SampleTypeFolderExportImportTest.java index 7ac1b49ff6..8e478a4508 100644 --- a/src/org/labkey/test/tests/SampleTypeFolderExportImportTest.java +++ b/src/org/labkey/test/tests/SampleTypeFolderExportImportTest.java @@ -559,6 +559,19 @@ public void testExportImportDerivedSamples() throws Exception String[] importedDataParents = matchingMap.get("Inputs/Data/parentDataClass").replace(" ", "").split(","); assertThat("expect parent dataClass derivation to round trip with equivalent values", sourceDataParents, hasItems(importedDataParents)); } + + // GitHub Issue 1117 + String importFolderPath = IMPORT_PROJECT_NAME + "/" + importFolder; + verifyRowIdForeignKey(importFolderPath, "samples", testSamples); + verifyRowIdForeignKey(importFolderPath, "samples", parentSampleType); + verifyRowIdForeignKey(importFolderPath, "exp.data", dataClass); + } + + private void verifyRowIdForeignKey(String containerPath, String schemaName, String queryName) + { + beginAt(WebTestHelper.buildURL("query", containerPath, "rawTableMetaData", + Map.of("schemaName", schemaName, "query.queryName", queryName))); + assertTextPresentCaseInsensitive("fk_rowid_"); } @Test diff --git a/src/org/labkey/test/tests/SampleTypeTest.java b/src/org/labkey/test/tests/SampleTypeTest.java index 74ed70276d..8e01befc55 100644 --- a/src/org/labkey/test/tests/SampleTypeTest.java +++ b/src/org/labkey/test/tests/SampleTypeTest.java @@ -1846,6 +1846,7 @@ public void testFieldUniqueConstraint() createPage.clickSave(); viewRawTableMetadata(sampleTypeName); + assertTextPresentCaseInsensitive("fk_rowid_"); // GitHub Issue 1117 verifyTableIndices("unique_constraint_test_", List.of("field_Name1", "fieldName_2")); assertTextNotPresent("unique_constraint_test_fieldname_3"); verifyTableIndexNonUnique("unique_constraint_test_", "field_Name1", false);