set the browser language to pass the playwright tests if default lang of browser is not en (#2108)
This commit is contained in:
parent
f45bf6171b
commit
fc6c61397d
15
pom.xml
15
pom.xml
@ -63,16 +63,16 @@
|
|||||||
<properties>
|
<properties>
|
||||||
<!-- Shared properties with plugins and version numbers across submodules-->
|
<!-- Shared properties with plugins and version numbers across submodules-->
|
||||||
<asciidoctorj.version>3.0.0</asciidoctorj.version>
|
<asciidoctorj.version>3.0.0</asciidoctorj.version>
|
||||||
<bootstrap.version>5.3.3</bootstrap.version>
|
<bootstrap.version>5.3.5</bootstrap.version>
|
||||||
<cglib.version>3.3.0</cglib.version>
|
<cglib.version>3.3.0</cglib.version>
|
||||||
<!-- do not update necessary for lesson -->
|
<!-- do not update necessary for lesson -->
|
||||||
<checkstyle.version>3.6.0</checkstyle.version>
|
<checkstyle.version>3.6.0</checkstyle.version>
|
||||||
<commons-collections.version>3.2.1</commons-collections.version>
|
<commons-collections.version>3.2.1</commons-collections.version>
|
||||||
<commons-compress.version>1.27.1</commons-compress.version>
|
<commons-compress.version>1.27.1</commons-compress.version>
|
||||||
<commons-io.version>2.18.0</commons-io.version>
|
<commons-io.version>2.19.0</commons-io.version>
|
||||||
<commons-lang3.version>3.14.0</commons-lang3.version>
|
<commons-lang3.version>3.14.0</commons-lang3.version>
|
||||||
<commons-text.version>1.13.0</commons-text.version>
|
<commons-text.version>1.13.0</commons-text.version>
|
||||||
<guava.version>33.4.6-jre</guava.version>
|
<guava.version>33.4.7-jre</guava.version>
|
||||||
<jacoco.version>0.8.11</jacoco.version>
|
<jacoco.version>0.8.11</jacoco.version>
|
||||||
<java.version>23</java.version>
|
<java.version>23</java.version>
|
||||||
<jaxb.version>2.3.1</jaxb.version>
|
<jaxb.version>2.3.1</jaxb.version>
|
||||||
@ -80,7 +80,7 @@
|
|||||||
<jose4j.version>0.9.3</jose4j.version>
|
<jose4j.version>0.9.3</jose4j.version>
|
||||||
<jquery.version>3.7.1</jquery.version>
|
<jquery.version>3.7.1</jquery.version>
|
||||||
<jsoup.version>1.19.1</jsoup.version>
|
<jsoup.version>1.19.1</jsoup.version>
|
||||||
<maven-compiler-plugin.version>3.13.0</maven-compiler-plugin.version>
|
<maven-compiler-plugin.version>3.14.0</maven-compiler-plugin.version>
|
||||||
<maven-failsafe-plugin.version>3.5.2</maven-failsafe-plugin.version>
|
<maven-failsafe-plugin.version>3.5.2</maven-failsafe-plugin.version>
|
||||||
<maven-jar-plugin.version>3.1.2</maven-jar-plugin.version>
|
<maven-jar-plugin.version>3.1.2</maven-jar-plugin.version>
|
||||||
<maven-javadoc-plugin.version>3.1.1</maven-javadoc-plugin.version>
|
<maven-javadoc-plugin.version>3.1.1</maven-javadoc-plugin.version>
|
||||||
@ -96,7 +96,7 @@
|
|||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
||||||
<thymeleaf.version>3.1.2.RELEASE</thymeleaf.version>
|
<thymeleaf.version>3.1.2.RELEASE</thymeleaf.version>
|
||||||
<waittimeForServerStart>60</waittimeForServerStart>
|
<waittimeForServerStart>60</waittimeForServerStart>
|
||||||
<webdriver.version>6.0.0</webdriver.version>
|
<webdriver.version>6.0.1</webdriver.version>
|
||||||
<webgoat.context>/WebGoat</webgoat.context>
|
<webgoat.context>/WebGoat</webgoat.context>
|
||||||
<webgoat.port>8080</webgoat.port>
|
<webgoat.port>8080</webgoat.port>
|
||||||
<webgoat.sslenabled>false</webgoat.sslenabled>
|
<webgoat.sslenabled>false</webgoat.sslenabled>
|
||||||
@ -238,7 +238,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.projectlombok</groupId>
|
<groupId>org.projectlombok</groupId>
|
||||||
<artifactId>lombok</artifactId>
|
<artifactId>lombok</artifactId>
|
||||||
<version>1.18.36</version>
|
<version>1.18.38</version>
|
||||||
<scope>provided</scope>
|
<scope>provided</scope>
|
||||||
<optional>true</optional>
|
<optional>true</optional>
|
||||||
</dependency>
|
</dependency>
|
||||||
@ -510,7 +510,7 @@
|
|||||||
<configuration>
|
<configuration>
|
||||||
<forkedProcessTimeoutInSeconds>600</forkedProcessTimeoutInSeconds>
|
<forkedProcessTimeoutInSeconds>600</forkedProcessTimeoutInSeconds>
|
||||||
<!-- Necessary for vulnerable components lesson -->
|
<!-- Necessary for vulnerable components lesson -->
|
||||||
<argLine>--add-opens java.base/sun.nio.ch=ALL-UNNAMED --add-opens java.base/java.io=ALL-UNNAMED
|
<argLine>--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/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.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
|
--add-opens java.base/java.text=ALL-UNNAMED --add-opens java.desktop/java.awt.font=ALL-UNNAMED
|
||||||
@ -694,6 +694,7 @@
|
|||||||
<argument>-Dwebgoat.server.directory=${java.io.tmpdir}/webgoat_${webgoat.port}</argument>
|
<argument>-Dwebgoat.server.directory=${java.io.tmpdir}/webgoat_${webgoat.port}</argument>
|
||||||
<argument>-Dwebgoat.user.directory=${java.io.tmpdir}/webgoat_${webgoat.port}</argument>
|
<argument>-Dwebgoat.user.directory=${java.io.tmpdir}/webgoat_${webgoat.port}</argument>
|
||||||
<argument>-Dspring.main.banner-mode=off</argument>
|
<argument>-Dspring.main.banner-mode=off</argument>
|
||||||
|
<argument>--enable-native-access=ALL-UNNAMED</argument>
|
||||||
<argument>--add-opens</argument>
|
<argument>--add-opens</argument>
|
||||||
<argument>java.base/java.lang=ALL-UNNAMED</argument>
|
<argument>java.base/java.lang=ALL-UNNAMED</argument>
|
||||||
<argument>--add-opens</argument>
|
<argument>--add-opens</argument>
|
||||||
|
@ -19,12 +19,17 @@ public class PlaywrightTest {
|
|||||||
public static class WebGoatOptions implements OptionsFactory {
|
public static class WebGoatOptions implements OptionsFactory {
|
||||||
@Override
|
@Override
|
||||||
public Options getOptions() {
|
public Options getOptions() {
|
||||||
return new Options().setHeadless(true).setContextOptions(getContextOptions());
|
return new Options()
|
||||||
|
.setHeadless(true)
|
||||||
|
.setContextOptions(getContextOptions());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected static Browser.NewContextOptions 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) {
|
public static String webGoatUrl(String path) {
|
||||||
|
@ -35,7 +35,7 @@ public class RegistrationUITest extends PlaywrightTest {
|
|||||||
@Test
|
@Test
|
||||||
@DisplayName("Should register a new user")
|
@DisplayName("Should register a new user")
|
||||||
void registerNewUser(Browser browser) {
|
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);
|
var registrationPage = new RegistrationPage(page);
|
||||||
registrationPage.open();
|
registrationPage.open();
|
||||||
|
|
||||||
|
@ -33,19 +33,19 @@ public class Authentication {
|
|||||||
|
|
||||||
public static Page sylvester(Browser browser) {
|
public static Page sylvester(Browser browser) {
|
||||||
User user = login(browser, sylvester);
|
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) {
|
public static Page tweety(Browser browser) {
|
||||||
User user = login(browser, tweety);
|
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) {
|
private static User login(Browser browser, User user) {
|
||||||
if (user.loggedIn()) {
|
if (user.loggedIn()) {
|
||||||
return user;
|
return user;
|
||||||
}
|
}
|
||||||
var page = browser.newContext().newPage();
|
var page = browser.newContext(new Browser.NewContextOptions().setLocale("en-US")).newPage();
|
||||||
RegistrationPage registrationPage = new RegistrationPage(page);
|
RegistrationPage registrationPage = new RegistrationPage(page);
|
||||||
registrationPage.open();
|
registrationPage.open();
|
||||||
registrationPage.register(user.name, user.password);
|
registrationPage.register(user.name, user.password);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user