From fca283e760383b6386bee74b67e4063cf9946235 Mon Sep 17 00:00:00 2001 From: Adam Rauch Date: Wed, 3 Sep 2025 19:54:10 -0700 Subject: [PATCH] Test export/import of query properties --- src/org/labkey/test/BaseWebDriverTest.java | 17 +++++++---------- .../test/pages/admin/ExportFolderPage.java | 9 ++++++++- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/src/org/labkey/test/BaseWebDriverTest.java b/src/org/labkey/test/BaseWebDriverTest.java index ca319c26c4..04350006eb 100644 --- a/src/org/labkey/test/BaseWebDriverTest.java +++ b/src/org/labkey/test/BaseWebDriverTest.java @@ -1705,14 +1705,14 @@ protected void setSelectedFields(String containerPath, String schema, String que } @LogMethod - private ExportFolderPage prepareForFolderExport(@Nullable String folderName, boolean exportSecurityGroups, boolean exportRoleAssignments, boolean includeSubfolders, boolean includeFiles, boolean exportETLDefination) + private ExportFolderPage prepareForFolderExport(@Nullable String folderName, boolean exportSecurityGroups, boolean exportRoleAssignments, boolean includeSubfolders, boolean includeFiles, boolean exportETLDefinition) { if (folderName != null) clickFolder(folderName); ExportFolderPage exportFolderPage = goToFolderManagement().goToExportTab(); - if (exportETLDefination) - exportFolderPage.includeETLDefintions(exportETLDefination); + if (exportETLDefinition) + exportFolderPage.includeETLDefinitions(exportETLDefinition); if (exportSecurityGroups) exportFolderPage.includeSecurityGroups(exportSecurityGroups); @@ -2283,12 +2283,11 @@ public SourceQueryPage editQuerySource(String schemaName, String queryName) clickAndWait(Locator.linkContainingText("edit source")); return new SourceQueryPage(getDriver()); } + public void editQueryProperties(String schemaName, String queryName) { - selectQuery(schemaName, queryName); - Locator loc = Locator.tagWithText("a", "edit properties"); - waitForElement(loc, WAIT_FOR_JAVASCRIPT); - clickAndWait(loc); + String url = WebTestHelper.buildRelativeUrl("query", getCurrentContainerPath(), "propertiesQuery", Map.of("schemaName", schemaName, "query.queryName", queryName)); + beginAt(url); } public void createNewQuery(String schemaName) @@ -2318,11 +2317,9 @@ protected void createQuery(String container, String name, String schemaName, Str { sourcePage.setMetadataXml(xml); } - sourcePage.clickSave(); + sourcePage.clickSave(); // This seems very slow... maybe clickSaveAndFinish() instead? if (inheritable) { - String queryURL = "query/" + container + "/begin.view?schemaName=" + schemaName; - beginAt(queryURL); editQueryProperties(schemaName, name); selectOptionByValue(Locator.name("inheritable"), "true"); clickButton("Save"); diff --git a/src/org/labkey/test/pages/admin/ExportFolderPage.java b/src/org/labkey/test/pages/admin/ExportFolderPage.java index f368b7f001..1893845207 100644 --- a/src/org/labkey/test/pages/admin/ExportFolderPage.java +++ b/src/org/labkey/test/pages/admin/ExportFolderPage.java @@ -135,7 +135,7 @@ public ExportFolderPage includeFiles(boolean checked) return this; } - public ExportFolderPage includeETLDefintions(boolean checked) + public ExportFolderPage includeETLDefinitions(boolean checked) { elementCache().etlDefinitionsCheckbox.set(checked); return this; @@ -171,6 +171,12 @@ public ExportFolderPage includeObject(String label, boolean include) return this; } + public ExportFolderPage clearAllObjects() + { + elementCache().clearAllObjects.click(); + return this; + } + public void includePhiColumns(FieldDefinition.PhiSelectType exportPhiLevel) { if (NotPHI != exportPhiLevel) @@ -281,6 +287,7 @@ public Checkbox exportItemCheckbox(String label) ); public final WebElement exportBtn = Locator.linkWithSpan("Export").findWhenNeeded(getDriver()); + public final WebElement clearAllObjects = Locator.linkWithSpan("Clear All Objects").findWhenNeeded(getDriver()); } public enum ExportLocation