Skip to content

Commit a845ce3

Browse files
committed
Merge branch 'develop' into fb_customizeView53197
2 parents e30bdda + 54fd9ba commit a845ce3

5 files changed

Lines changed: 63 additions & 7 deletions

File tree

src/org/labkey/test/WebDriverWrapper.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1358,6 +1358,11 @@ public String getDisplayName()
13581358
return whoAmI().getDisplayName();
13591359
}
13601360

1361+
public int getCurrentUserId()
1362+
{
1363+
return whoAmI().getUserId().intValue();
1364+
}
1365+
13611366
public String getCurrentDateTimeFormatString()
13621367
{
13631368
return (String)executeScript("return LABKEY.container.formats.dateTimeFormat");
@@ -2962,10 +2967,11 @@ public void mouseOut()
29622967
catch (WebDriverException ignore) { }
29632968
}
29642969

2965-
public void mouseOver(Locator l)
2970+
public WebElement mouseOver(Locator l)
29662971
{
29672972
WebElement el = l.findElement(getDriver());
29682973
mouseOver(el);
2974+
return el;
29692975
}
29702976

29712977
public void mouseOver(WebElement el)

src/org/labkey/test/tests/SimpleModuleTest.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@
5656
import org.labkey.test.params.list.IntListDefinition;
5757
import org.labkey.test.params.list.ListDefinition;
5858
import org.labkey.test.util.DataRegionTable;
59+
import org.labkey.test.util.LabKeyExpectedConditions;
5960
import org.labkey.test.util.LogMethod;
6061
import org.labkey.test.util.LoggedParam;
6162
import org.labkey.test.util.Maps;
@@ -1215,7 +1216,8 @@ private void doTestReportIcon()
12151216
private void doTestReportCreatedDate()
12161217
{
12171218
log("Verify module report \"created\" date");
1218-
click(Locator.tag("span").withClass("fa-list-ul").notHidden());
1219+
WebElement detailsLink = Locator.tag("span").withClass("fa-list-ul").notHidden().findElement(getDriver());
1220+
doAndWaitForPageToLoad(() -> shortWait().until(LabKeyExpectedConditions.clickUntilStale(detailsLink)));
12191221
waitForText("August 01 2015");
12201222
}
12211223

src/org/labkey/test/tests/issues/IssuesTest.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,8 @@ public void generalTest() throws Exception
262262
fields.add(new FieldDefinition("Note", new FieldDefinition.StringLookup("lists", getLookupTableName("issues", "Note"))));
263263
fields.add(new FieldDefinition("Module", new FieldDefinition.StringLookup("lists", getLookupTableName("issues", "Module"))));
264264

265+
fields.add(new FieldDefinition("StringWithDefault", FieldDefinition.ColumnType.String));
266+
265267
clickProject(getProjectName());
266268
waitAndClickAndWait(Locator.linkContainingText(ISSUE_SUMMARY_WEBPART_NAME));
267269
IssuesAdminPage adminPage = _issuesHelper.goToAdmin();
@@ -272,6 +274,14 @@ public void generalTest() throws Exception
272274
}
273275
clickButton("Save");
274276

277+
// configure a string field with a default value
278+
adminPage = _issuesHelper.goToAdmin();
279+
adminPage.getFieldsPanel().getField("StringWithDefault")
280+
.clickAdvancedSettings()
281+
.clickDefaultValuesLink(); // should land us in
282+
setFormElement(Locator.input("stringWithDefault"), "StringWithDefault (default value)");
283+
clickButton("Save Defaults");
284+
275285
clickProject(getProjectName());
276286
waitAndClickAndWait(Locator.linkContainingText(ISSUE_SUMMARY_WEBPART_NAME));
277287

@@ -295,6 +305,9 @@ public void generalTest() throws Exception
295305
if (!isElementPresent(fifthStringLocator))
296306
fifthStringLocator = Locator.name("myfifthstring");
297307
selectOptionByText(fifthStringLocator, "Polonium");
308+
// clear out the default value on insert
309+
setFormElement(Locator.name("stringWithDefault"), "");
310+
298311
clickButton("Save");
299312

300313
// find issueId - parse the text from first space to :
@@ -305,6 +318,7 @@ public void generalTest() throws Exception
305318
"Milestone", "My Integer", "My Second Integer", "My First String", "My Third String", "My Fourth String", "My Fifth String");
306319
assertTextNotPresent("MySecondString", "My Second String");
307320
assertElementPresent(Locator.linkWithText("http://www.issues.test"));
321+
assertTextNotPresent("StringWithDefault", "StringWithDefault (default value)");
308322

309323
// ListAction
310324
clickAndWait(Locator.linkWithText("Issues List"));
@@ -596,6 +610,8 @@ public void requiredFieldsTest()
596610
@Test
597611
public void viewSelectedDetailsTest()
598612
{
613+
614+
599615
DataRegionTable issuesTable = new DataRegionTable(ISSUE_LIST_REGION_NAME, getDriver());
600616

601617
issuesTable.setFilter("Status", "Has Any Value", null);

src/org/labkey/test/tests/list/ListTest.java

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
import org.labkey.test.pages.ImportDataPage;
5050
import org.labkey.test.pages.list.EditListDefinitionPage;
5151
import org.labkey.test.pages.list.GridPage;
52+
import org.labkey.test.pages.query.UpdateQueryRowPage;
5253
import org.labkey.test.params.FieldDefinition;
5354
import org.labkey.test.params.FieldDefinition.StringLookup;
5455
import org.labkey.test.params.FieldInfo;
@@ -508,6 +509,32 @@ public void testNameTrimming()
508509
checker().withScreenshot().verifyEquals("Name not trimmed as expected", trimmedName, editList.getName());
509510
}
510511

512+
@Test // Issue 52339
513+
public void testLongName()
514+
{
515+
String listName = "A_+-:''.¡™£¢∞§¶•ªº–≠œ∑´®†¥¨ˆøπ“‘«æ…¬˚∆˙©√ƒ∂ßΩ≈ç√∫µ≤≥÷‹›fifl‡°·‚—±⁄€‹›‡‰Æ«»¢∫√∑∏∂";
516+
String fieldWithDefault = TestDataGenerator.randomFieldName("With Default");
517+
EditListDefinitionPage listEditPage = _listHelper.beginCreateList(getProjectName(), listName);
518+
listEditPage.manuallyDefineFieldsWithAutoIncrementingKey("Key");
519+
listEditPage.addField(new FieldDefinition(fieldWithDefault, ColumnType.String));
520+
listEditPage.clickSave();
521+
522+
listEditPage = _listHelper.goToEditDesign(listName);
523+
var page = listEditPage.getFieldsPanel()
524+
.expand()
525+
.getField(fieldWithDefault)
526+
.clickAdvancedSettings()
527+
.clickDefaultValuesLink();
528+
var input = Locator.tagContainingText("td", "With Default").followingSibling("td").descendant("input").findElement(page.getDriver());
529+
setFormElement(input, "42");
530+
clickButton("Save Defaults");
531+
_listHelper.beginAtList(getProjectName(), listName);
532+
533+
DataRegionTable list = new DataRegionTable("query", getDriver());
534+
UpdateQueryRowPage updatePage = list.clickInsertNewRow();
535+
checker().verifyEquals("Default value not as expected ", "42", updatePage.getTextInputValue(fieldWithDefault));
536+
updatePage.submit();
537+
}
511538
/* Issue 51572: Bug with creating a new list by uploading a csv file in "UTF-8 with BOM" format
512539
*/
513540
@Test

src/org/labkey/test/util/AuditLogHelper.java

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -171,24 +171,29 @@ public void checkAuditEventDiffCount(String containerPath, AuditEvent auditEvent
171171
}
172172
public void checkAuditEventDiffCount(String containerPath, AuditEvent auditEventName, List<Filter> filters, List<Integer> expectedDiffCounts) throws IOException, CommandException
173173
{
174-
Integer maxRows = expectedDiffCounts.size();
175-
List<Map<String, Object>> events = getAuditLogsFromLKS(containerPath, auditEventName, List.of("InventoryUpdateType", "NewRecordMap"), filters, maxRows, ContainerFilter.CurrentAndSubfolders).getRows();
174+
checkAuditEventDiffCount(containerPath, auditEventName, "NewRecordMap", filters, expectedDiffCounts);
175+
}
176+
177+
public void checkAuditEventDiffCount(String containerPath, AuditEvent auditEventName, String eventDiffFieldName, List<Filter> filters, List<Integer> expectedDiffCounts) throws IOException, CommandException
178+
{
179+
Integer maxRows = filters == null || filters.isEmpty() ? expectedDiffCounts.size() : null;
180+
List<Map<String, Object>> events = getAuditLogsFromLKS(containerPath, auditEventName, List.of("InventoryUpdateType", eventDiffFieldName), filters, maxRows, ContainerFilter.CurrentAndSubfolders).getRows();
176181
assertEquals("Unexpected number of events", expectedDiffCounts.size(), events.size());
177182
for (int i = 0; i < expectedDiffCounts.size(); i++)
178183
{
179184
Map<String, Object> event = events.get(i);
180185
boolean isInventoryUpdateType = event.get("InventoryUpdateType") != null;
181186
int expectedDiffCount = isInventoryUpdateType ? 0 : expectedDiffCounts.get(i);
182-
String dataChangesStr = (String) event.get("NewRecordMap");
187+
String dataChangesStr = (String) event.get(eventDiffFieldName);
183188
String[] dataChanges = dataChangesStr != null ? dataChangesStr.split("&") : new String[0];
184189

185190
// filter out SampleStateLabel as that is not a change, it is added for display purposes
186191
dataChanges = Stream.of(dataChanges).filter(s -> !s.toLowerCase().startsWith("samplestatelabel=")).toArray(String[]::new);
187192
// filter out RowId as that is not a change, it is added for display purposes
188193
dataChanges = Stream.of(dataChanges).filter(s -> !s.toLowerCase().startsWith("rowid=")).toArray(String[]::new);
189194

190-
TestLogger.log("Audit record data changes diff count check: " + dataChangesStr);
191-
assertEquals("Audit record data changes did not include the expected number of diffs, expected " + expectedDiffCount + " but was " + dataChanges.length + ": " + dataChangesStr,
195+
TestLogger.log("Audit record data changes diff count check (" + eventDiffFieldName + "): " + dataChangesStr);
196+
assertEquals("Audit record data changes did not include the expected number of diffs in " + eventDiffFieldName + ", expected " + expectedDiffCount + " but was " + dataChanges.length + ": " + dataChangesStr,
192197
expectedDiffCount, dataChanges.length);
193198
}
194199
}

0 commit comments

Comments
 (0)