From fc6c61397db54d38650857ed790f3f8e2fa5d27a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Zubcevic?= Date: Fri, 18 Apr 2025 12:48:34 +0200 Subject: [PATCH] set the browser language to pass the playwright tests if default lang of browser is not en (#2108) --- pom.xml | 15 ++++++++------- .../playwright/webgoat/PlaywrightTest.java | 9 +++++++-- .../playwright/webgoat/RegistrationUITest.java | 2 +- .../webgoat/helpers/Authentication.java | 6 +++--- 4 files changed, 19 insertions(+), 13 deletions(-) diff --git a/pom.xml b/pom.xml index d154d0880..879f561f1 100644 --- a/pom.xml +++ b/pom.xml @@ -63,16 +63,16 @@ 3.0.0 - 5.3.3 + 5.3.5 3.3.0 3.6.0 3.2.1 1.27.1 - 2.18.0 + 2.19.0 3.14.0 1.13.0 - 33.4.6-jre + 33.4.7-jre 0.8.11 23 2.3.1 @@ -80,7 +80,7 @@ 0.9.3 3.7.1 1.19.1 - 3.13.0 + 3.14.0 3.5.2 3.1.2 3.1.1 @@ -96,7 +96,7 @@ UTF-8 3.1.2.RELEASE 60 - 6.0.0 + 6.0.1 /WebGoat 8080 false @@ -238,7 +238,7 @@ org.projectlombok lombok - 1.18.36 + 1.18.38 provided true @@ -510,7 +510,7 @@ 600 - --add-opens java.base/sun.nio.ch=ALL-UNNAMED --add-opens java.base/java.io=ALL-UNNAMED + --enable-native-access=ALL-UNNAMED --add-opens java.base/sun.nio.ch=ALL-UNNAMED --add-opens java.base/java.io=ALL-UNNAMED --add-opens java.base/sun.nio.ch=ALL-UNNAMED --add-opens java.base/java.io=ALL-UNNAMED --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED --add-opens java.base/java.text=ALL-UNNAMED --add-opens java.desktop/java.awt.font=ALL-UNNAMED @@ -694,6 +694,7 @@ -Dwebgoat.server.directory=${java.io.tmpdir}/webgoat_${webgoat.port} -Dwebgoat.user.directory=${java.io.tmpdir}/webgoat_${webgoat.port} -Dspring.main.banner-mode=off + --enable-native-access=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens diff --git a/src/it/java/org/owasp/webgoat/playwright/webgoat/PlaywrightTest.java b/src/it/java/org/owasp/webgoat/playwright/webgoat/PlaywrightTest.java index 8f429573c..744c4aa91 100644 --- a/src/it/java/org/owasp/webgoat/playwright/webgoat/PlaywrightTest.java +++ b/src/it/java/org/owasp/webgoat/playwright/webgoat/PlaywrightTest.java @@ -19,12 +19,17 @@ public class PlaywrightTest { public static class WebGoatOptions implements OptionsFactory { @Override public Options getOptions() { - return new Options().setHeadless(true).setContextOptions(getContextOptions()); + return new Options() + .setHeadless(true) + .setContextOptions(getContextOptions()); } + } protected static Browser.NewContextOptions getContextOptions() { - return new Browser.NewContextOptions().setBaseURL(webGoatUrlConfig.getBaseUrl()); + return new Browser.NewContextOptions() + .setLocale("en-US") + .setBaseURL(webGoatUrlConfig.getBaseUrl()); } public static String webGoatUrl(String path) { diff --git a/src/it/java/org/owasp/webgoat/playwright/webgoat/RegistrationUITest.java b/src/it/java/org/owasp/webgoat/playwright/webgoat/RegistrationUITest.java index e8dfff715..2ae141980 100644 --- a/src/it/java/org/owasp/webgoat/playwright/webgoat/RegistrationUITest.java +++ b/src/it/java/org/owasp/webgoat/playwright/webgoat/RegistrationUITest.java @@ -35,7 +35,7 @@ public class RegistrationUITest extends PlaywrightTest { @Test @DisplayName("Should register a new user") void registerNewUser(Browser browser) { - var page = browser.newContext().newPage(); + var page = browser.newContext(new Browser.NewContextOptions().setLocale("en-US")).newPage(); var registrationPage = new RegistrationPage(page); registrationPage.open(); diff --git a/src/it/java/org/owasp/webgoat/playwright/webgoat/helpers/Authentication.java b/src/it/java/org/owasp/webgoat/playwright/webgoat/helpers/Authentication.java index 914106ed9..489b21090 100644 --- a/src/it/java/org/owasp/webgoat/playwright/webgoat/helpers/Authentication.java +++ b/src/it/java/org/owasp/webgoat/playwright/webgoat/helpers/Authentication.java @@ -33,19 +33,19 @@ public class Authentication { public static Page sylvester(Browser browser) { User user = login(browser, sylvester); - return browser.newContext(new Browser.NewContextOptions().setStorageState(user.auth)).newPage(); + return browser.newContext(new Browser.NewContextOptions().setLocale("en-US").setStorageState(user.auth)).newPage(); } public static Page tweety(Browser browser) { User user = login(browser, tweety); - return browser.newContext(new Browser.NewContextOptions().setStorageState(user.auth)).newPage(); + return browser.newContext(new Browser.NewContextOptions().setLocale("en-US").setStorageState(user.auth)).newPage(); } private static User login(Browser browser, User user) { if (user.loggedIn()) { return user; } - var page = browser.newContext().newPage(); + var page = browser.newContext(new Browser.NewContextOptions().setLocale("en-US")).newPage(); RegistrationPage registrationPage = new RegistrationPage(page); registrationPage.open(); registrationPage.register(user.name, user.password);