From 4d2374498da3140b0ec8a9ed4181c85779fa7fbe Mon Sep 17 00:00:00 2001 From: Robert Goldmann <deadlocker@gmx.de> Date: Sun, 26 Feb 2023 21:17:03 +0100 Subject: [PATCH] #733 - added selenium test --- .../integration/selenium/CsvImportTest.java | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/CsvImportTest.java b/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/CsvImportTest.java index 00c217291..2ef244769 100644 --- a/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/CsvImportTest.java +++ b/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/integration/selenium/CsvImportTest.java @@ -519,6 +519,32 @@ class CsvImportTest extends SeleniumTestBase assertRow(rowAfterSave, "green", "2023-01-08", "No category", "dolor sit amet", "dolor sit amet", "-12.00 €"); } + @Test + void test_showTransactionNameSuggestions() + { + uploadAndSetColumnSettings(); + + final List<WebElement> rows = driver.findElements(By.className("transaction-import-row")); + final WebElement row = rows.get(0); + + // change data + final WebElement categorySelect = row.findElement(By.cssSelector(".category-select-wrapper .custom-select")); + categorySelect.click(); + row.findElements(By.cssSelector(".category-select-wrapper .custom-select-item-name")).stream() + .filter(webElement -> webElement.getText().equals("sdfdsf")) + .findFirst().orElseThrow().click(); + + final WebElement nameInput = row.findElement(By.name("name")); + nameInput.clear(); + nameInput.click(); + nameInput.sendKeys("e"); + + final WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(5)); + wait.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector(".autocomplete-content li"))); + + assertThat(driver.findElements(By.cssSelector(".autocomplete-content li"))).hasSize(3); + } + private void uploadAndSetColumnSettings() { driver.get(helper.getUrl() + "/transactionImport"); -- GitLab