Skip to content

Commit fcc7241

Browse files
authored
Automation for 51695 (#2514)
1 parent a56522e commit fcc7241

1 file changed

Lines changed: 34 additions & 0 deletions

File tree

src/org/labkey/test/tests/query/QueryMetadataTest.java

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import org.labkey.test.components.domain.DomainFieldRow;
1010
import org.labkey.test.pages.core.admin.BaseSettingsPage.DATE_FORMAT;
1111
import org.labkey.test.pages.query.QueryMetadataEditorPage;
12+
import org.labkey.test.pages.query.SourceQueryPage;
1213
import org.labkey.test.params.FieldDefinition;
1314
import org.labkey.test.params.experiment.SampleTypeDefinition;
1415
import org.labkey.test.params.list.IntListDefinition;
@@ -288,6 +289,39 @@ private void verifyMetadataXMLAfterResave(String schemaName, String queryName, S
288289
.contains(expectedColumnXml);
289290
}
290291

292+
/**
293+
* Validation for issue : 51695
294+
*/
295+
@Test
296+
public void testMultiValueJunctionType()
297+
{
298+
QueryMetadataEditorPage page = QueryMetadataEditorPage.beginAt(this, getProjectName(), "assay.General." + TEST_ASSAY, "Data");
299+
page.resetToDefault();
300+
301+
SourceQueryPage sourcePage = page.clickEditSource();
302+
// introduce a MVFK with an unsupported multi-value type, this should fail to save
303+
String xml = "<tables xmlns=\"http://labkey.org/data/xml\">\n" +
304+
" <table tableName=\"Data\" tableDbType=\"NOT_IN_DB\">\n" +
305+
" <columns>\n" +
306+
" <column columnName=\"fakeMVFK\" wrappedColumnName=\"LSID\">\n" +
307+
" <fk>\n" +
308+
" <fkDbSchema>lists</fkDbSchema>\n" +
309+
" <fkTable>queryMetadataTestList</fkTable>\n" +
310+
" <fkColumnName>key</fkColumnName>\n" +
311+
" <fkMultiValued>unsupported</fkMultiValued>\n" +
312+
" <fkJunctionLookup>entityId</fkJunctionLookup>\n" +
313+
" </fk>\n" +
314+
" </column>\n" +
315+
" </columns>\n" +
316+
" </table>\n" +
317+
"</tables>";
318+
319+
sourcePage.setMetadataXml(xml);
320+
checker().withScreenshot("validation-error")
321+
.verifyEquals("expecting a validation error for the unsupported multi value type",
322+
"Failed to Save: Column : \"fakeMVFK\" has an invalid fkMultiValued value : \"unsupported\" is not supported.", sourcePage.clickSaveExpectingError());
323+
}
324+
291325
@Override
292326
protected String getProjectName()
293327
{

0 commit comments

Comments
 (0)