From 683f4a4c7c61148be998c9e9fb6eaf0536aa12f2 Mon Sep 17 00:00:00 2001 From: Mykhailo Novitskyi Date: Mon, 14 Aug 2023 15:04:40 +0200 Subject: [PATCH 1/8] add new playwright tests --- .../playwright/core/pages/TestPage.java | 20 ++ .../core/newDrivers/DriverManagerTest.java | 43 +++++ .../mrchecker/playwright/tags/UnitTest.java | 14 ++ .../playwright/unit/BasePageTest.java | 20 ++ .../unit/DefaultDriverBrowserTest.java | 44 +++++ .../unit/NewPlaywrightBrowsersTest.java | 39 ++++ .../base/runtime/RuntimeParametersTest.java | 174 ++++++++++++++++++ 7 files changed, 354 insertions(+) create mode 100644 mrchecker-framework-modules/mrchecker-playwright-module/src/main/java/com/capgemini/mrchecker/playwright/core/pages/TestPage.java create mode 100644 mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java create mode 100644 mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/tags/UnitTest.java create mode 100644 mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/BasePageTest.java create mode 100644 mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/DefaultDriverBrowserTest.java create mode 100644 mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/NewPlaywrightBrowsersTest.java create mode 100644 mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/base/runtime/RuntimeParametersTest.java diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/main/java/com/capgemini/mrchecker/playwright/core/pages/TestPage.java b/mrchecker-framework-modules/mrchecker-playwright-module/src/main/java/com/capgemini/mrchecker/playwright/core/pages/TestPage.java new file mode 100644 index 00000000..ff9e9149 --- /dev/null +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/main/java/com/capgemini/mrchecker/playwright/core/pages/TestPage.java @@ -0,0 +1,20 @@ +package com.capgemini.mrchecker.playwright.core.pages; + +import com.capgemini.mrchecker.playwright.core.BasePage; + +public class TestPage extends BasePage { + @Override + public boolean isLoaded() { + return true; + } + + @Override + public void load() { + loadPage("https://google.com/"); + } + + @Override + public String pageTitle() { + return getActualPageTitle(); + } +} diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java new file mode 100644 index 00000000..b5dcce5e --- /dev/null +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java @@ -0,0 +1,43 @@ +package com.capgemini.mrchecker.playwright.core.newDrivers; + +import static org.junit.Assert.assertTrue; + +import org.junit.jupiter.api.*; + +import com.capgemini.mrchecker.playwright.core.base.properties.PropertiesPlaywright; +import com.capgemini.mrchecker.playwright.tags.UnitTest; +import com.capgemini.mrchecker.test.core.base.properties.PropertiesSettingsModule; +import com.google.inject.Guice; + +@UnitTest +public class DriverManagerTest { + private DriverManager driverManager; + + @BeforeAll + public static void setUpBeforeClass() { + } + + @AfterAll + public static void tearDownAfterClass() { + } + + @BeforeEach + public void setUp() { + PropertiesPlaywright propertiesPlaywright = Guice.createInjector(PropertiesSettingsModule.init()) + .getInstance(PropertiesPlaywright.class); + + driverManager = new DriverManager(propertiesPlaywright); + driverManager.start(); + } + + @AfterEach + public void tearDown() { + driverManager.stop(); + } + + @Test + public void test() { + assertTrue(true); + } + +} diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/tags/UnitTest.java b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/tags/UnitTest.java new file mode 100644 index 00000000..b3c3dddb --- /dev/null +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/tags/UnitTest.java @@ -0,0 +1,14 @@ +package com.capgemini.mrchecker.playwright.tags; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import org.junit.jupiter.api.Tag; + +@Target(ElementType.TYPE) +@Retention(RetentionPolicy.RUNTIME) +@Tag("UnitTest") +public @interface UnitTest { +} \ No newline at end of file diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/BasePageTest.java b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/BasePageTest.java new file mode 100644 index 00000000..95a8ec11 --- /dev/null +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/BasePageTest.java @@ -0,0 +1,20 @@ +package com.capgemini.mrchecker.playwright.unit; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +import com.capgemini.mrchecker.playwright.core.pages.TestPage; +import com.capgemini.mrchecker.playwright.tags.UnitTest; +import com.capgemini.mrchecker.test.core.BaseTest; +import com.capgemini.mrchecker.test.core.utils.PageFactory; + +@UnitTest +class BasePageTest extends BaseTest { + + @Test + void testGetPageTitle() { + TestPage testPage = PageFactory.getPageInstance(TestPage.class); + testPage.load(); + Assertions.assertEquals("Google", testPage.pageTitle(), ""); + } +} diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/DefaultDriverBrowserTest.java b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/DefaultDriverBrowserTest.java new file mode 100644 index 00000000..79d75b31 --- /dev/null +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/DefaultDriverBrowserTest.java @@ -0,0 +1,44 @@ +package com.capgemini.mrchecker.playwright.unit; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +import org.junit.jupiter.api.*; +import org.junit.jupiter.api.parallel.ResourceLock; + +import com.capgemini.mrchecker.playwright.core.newDrivers.DriverManager; +import com.capgemini.mrchecker.playwright.core.pages.TestPage; +import com.capgemini.mrchecker.playwright.tags.UnitTest; +import com.capgemini.mrchecker.test.core.utils.PageFactory; + +@UnitTest +@ResourceLock(value = "SingleThread") +public class DefaultDriverBrowserTest { + @BeforeAll + public static void setUpBeforeClass() { + } + + @AfterAll + public static void tearDownAfterClass() { + } + + @BeforeEach + public void setUp() { + + } + + @AfterEach + public void tearDown() { + } + + @Test + public void testParameterGetChrome() { + TestPage testPage = PageFactory.getPageInstance(TestPage.class); + testPage.load(); + String driverName = DriverManager.getDriver() + .browser() + .browserType() + .name(); + assertEquals("chromium", driverName, "Wrong browser name"); + } + +} \ No newline at end of file diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/NewPlaywrightBrowsersTest.java b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/NewPlaywrightBrowsersTest.java new file mode 100644 index 00000000..4233888a --- /dev/null +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/NewPlaywrightBrowsersTest.java @@ -0,0 +1,39 @@ +package com.capgemini.mrchecker.playwright.unit; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +import org.junit.jupiter.api.Test; + +import com.capgemini.mrchecker.playwright.core.newDrivers.NewPlaywright; +import com.capgemini.mrchecker.playwright.tags.UnitTest; +import com.microsoft.playwright.Browser; +import com.microsoft.playwright.Playwright; + +@UnitTest +public class NewPlaywrightBrowsersTest { + private final NewPlaywright playwright = new NewPlaywright(Playwright.create()); + + @Test + public void shouldBrowserNameBeFirefox() { + Browser browser = playwright.firefox() + .launch(); + assertEquals("firefox", browser.browserType() + .name(), "Wrong browser name"); + } + + @Test + public void shouldBrowserNameBeChromium() { + Browser browser = playwright.chromium() + .launch(); + assertEquals("chromium", browser.browserType() + .name(), "Wrong browser name"); + } + + @Test + public void shouldBrowserNameBeWebkit() { + Browser browser = playwright.webkit() + .launch(); + assertEquals("webkit", browser.browserType() + .name(), "Wrong browser name"); + } +} diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/base/runtime/RuntimeParametersTest.java b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/base/runtime/RuntimeParametersTest.java new file mode 100644 index 00000000..0b248190 --- /dev/null +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/base/runtime/RuntimeParametersTest.java @@ -0,0 +1,174 @@ +package com.capgemini.mrchecker.playwright.unit.base.runtime; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.core.Is.is; +import static org.hamcrest.core.IsEqual.equalTo; +import static org.hamcrest.core.IsInstanceOf.instanceOf; +import static org.hamcrest.core.IsNull.nullValue; +import static org.junit.Assert.fail; + +import java.util.Arrays; +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.function.Consumer; + +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.parallel.ResourceLock; + +import com.capgemini.mrchecker.playwright.core.base.runtime.RuntimeParametersPlaywright; + +@ResourceLock(value = "SingleThread") +public class RuntimeParametersTest { + + private static final Map STARTUP_PARAMETERS_VALUES = new LinkedHashMap() { + { + put("browser", "chromedriver"); + put("browserVersion", "11.0"); + put("seleniumGrid", "something"); + put("os", "linux"); + put("browserOptions", + "headless;window-size=1200x600;testEquals=FirstEquals=SecondEquals;--testMe;acceptInsecureCerts=true;maxInstances=3"); + put("headless", "false"); + } + }; + + public static final String DEFAULT_BROWSER_VALUE = "chrome"; + public static final String BROWSER_OPTIONS_TEST_KEY = "browserOptionsTestKey"; + + @BeforeEach + public void setUp() { + STARTUP_PARAMETERS_VALUES.forEach(System::setProperty); + refreshAllParameters(); + } + + @AfterEach + public void tearDown() { + STARTUP_PARAMETERS_VALUES.forEach((k, v) -> System.clearProperty(k)); + refreshAllParameters(); + } + + private static void refreshAllParameters() { + doForEachParam(RuntimeParametersPlaywright::refreshParameterValue); + } + + private static void doForEachParam(Consumer applyFunction) { + Arrays.stream(RuntimeParametersPlaywright.values()) + .forEach(applyFunction); + } + + @Test + public void shouldGetAllStartupProperties() { + doForEachParam((e) -> assertThat(e.toString() + " failed!", e.getValue(), is(equalTo(STARTUP_PARAMETERS_VALUES.get(e.getKey()))))); + } + + @Test + public void shouldGetReturnOriginBrowserValue() { + System.setProperty("browser", STARTUP_PARAMETERS_VALUES.get("browser")); + + refreshAllParameters(); + String browserValue = RuntimeParametersPlaywright.BROWSER.getValue(); + + assertThat(browserValue, is(equalTo(STARTUP_PARAMETERS_VALUES.get(RuntimeParametersPlaywright.BROWSER.getKey())))); + } + + @Test + public void shouldGetReturnDefaultBrowserValue() { + Arrays.stream(new String[] { "", "null" }) + .forEach((s) -> { + System.setProperty("browser", s); + + refreshAllParameters(); + String browserValue = RuntimeParametersPlaywright.BROWSER.getValue(); + + assertThat("Failed for '" + s + "'!", browserValue, is(equalTo(DEFAULT_BROWSER_VALUE))); + }); + } + + @Test + public void shouldGetReturnDefaultBrowserValueWhenNoSystemProperty() { + System.clearProperty("browser"); + + refreshAllParameters(); + String browserValue = RuntimeParametersPlaywright.BROWSER.getValue(); + + assertThat(browserValue, is(equalTo(DEFAULT_BROWSER_VALUE))); + } + + @Test + public void shouldBrowserOptionBeBoolean() { + shouldBrowserOptionBeOfClass("true", Boolean.class); + } + + @Test + public void shouldBrowserOptionBeInteger() { + shouldBrowserOptionBeOfClass("123", Integer.class); + } + + @Test + public void shouldBrowserOptionBeIntegerFloat() { + shouldBrowserOptionBeOfClass("123.321", Float.class); + } + + @Test + public void shouldBrowserOptionBeIntegerString() { + shouldBrowserOptionBeOfClass("blue", String.class); + } + + private void shouldBrowserOptionBeOfClass(String value, Class clazz) { + System.setProperty("browserOptions", BROWSER_OPTIONS_TEST_KEY + "=" + value); + + refreshAllParameters(); + Map browserOptionsValues = RuntimeParametersPlaywright.BROWSER_OPTIONS.getValues(); + Object optionValue = browserOptionsValues.get(BROWSER_OPTIONS_TEST_KEY); + + assertThat(optionValue, is(instanceOf(clazz))); + } + + @Test + public void shouldGetProperBrowserOptionsValuesSize() { + final String[] browserOptions = STARTUP_PARAMETERS_VALUES.get(RuntimeParametersPlaywright.BROWSER_OPTIONS.getKey()) + .split(";"); + + int browserOptionsCount = RuntimeParametersPlaywright.BROWSER_OPTIONS.getValues() + .size(); + + assertThat(browserOptionsCount, is(equalTo(browserOptions.length))); + } + + @Test + public void shouldGetProperBrowserOptionsValuesContents() { + final String[] browserOptions = STARTUP_PARAMETERS_VALUES.get(RuntimeParametersPlaywright.BROWSER_OPTIONS.getKey()) + .split(";"); + + Map browserOptionsValues = RuntimeParametersPlaywright.BROWSER_OPTIONS.getValues(); + + browserOptionsValues.forEach((key, value) -> { + try { + String browserOption = Arrays.stream(browserOptions) + .filter(s -> s.startsWith(key)) + .findFirst() + .orElseThrow(Exception::new); + + assertThat(browserOption.endsWith(value.toString()), is(equalTo(true))); + } catch (Exception e) { + fail(key + " does NOT exist"); + } + }); + } + + @Test + public void shouldGetProperBrowserOptionsValuesBeNull() { + Map browserOptionsValues = RuntimeParametersPlaywright.BROWSER.getValues(); + + assertThat(browserOptionsValues, is(nullValue())); + } + + @Test + public void shouldToStringReturnKeyValue() { + String toStringValue = RuntimeParametersPlaywright.BROWSER.toString(); + + assertThat(toStringValue, is(equalTo("browser=" + STARTUP_PARAMETERS_VALUES.get("browser")))); + } +} \ No newline at end of file From 91080e137744bc61f4e4bb869ab52a7f4c4e36ae Mon Sep 17 00:00:00 2001 From: Mykhailo Novitskyi Date: Mon, 14 Aug 2023 15:05:15 +0200 Subject: [PATCH 2/8] comment unassigned vars --- .../src/resources/settings.properties | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/resources/settings.properties b/mrchecker-framework-modules/mrchecker-playwright-module/src/resources/settings.properties index 7017ace2..cacf7669 100644 --- a/mrchecker-framework-modules/mrchecker-playwright-module/src/resources/settings.properties +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/resources/settings.properties @@ -1,5 +1,5 @@ -playwright.browser.proxy= -playwright.browser.channel= +#playwright.browser.proxy= +#playwright.browser.channel= playwright.browser.downloadPath=./lib/playwright playwright.browser.skipDownload=0 playwright.allowStaticPage=false From ed0103398cc1d12566a79b7529415cf6a8bf1cb4 Mon Sep 17 00:00:00 2001 From: Mykhailo Novitskyi Date: Mon, 14 Aug 2023 15:05:41 +0200 Subject: [PATCH 3/8] add properties to playwright module --- .../src/test/resources/allure.properties | 1 + .../src/test/resources/junit-platform.properties | 10 ++++++++++ 2 files changed, 11 insertions(+) create mode 100644 mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/allure.properties create mode 100644 mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/junit-platform.properties diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/allure.properties b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/allure.properties new file mode 100644 index 00000000..6c1e0bb1 --- /dev/null +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/allure.properties @@ -0,0 +1 @@ +allure.results.directory=target/allure-results \ No newline at end of file diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/junit-platform.properties b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/junit-platform.properties new file mode 100644 index 00000000..94ae49e0 --- /dev/null +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/junit-platform.properties @@ -0,0 +1,10 @@ +junit.jupiter.extensions.autodetection.enabled=true +junit.jupiter.execution.parallel.enabled=true +#junit.jupiter.execution.parallel.mode.default=concurrent +junit.jupiter.execution.parallel.mode.default=same_thread +junit.jupiter.execution.parallel.mode.classes.default=concurrent +#junit.jupiter.execution.parallel.mode.classes.default=same_thread +junit.jupiter.execution.parallel.config.strategy=dynamic +junit.jupiter.execution.parallel.config.dynamic.factor=1 +cucumber.ansi-colors.disabled=false +cucumber.publish.quiet=true \ No newline at end of file From 77d6f6cde913fac88712afbd745c430f21d7d2f7 Mon Sep 17 00:00:00 2001 From: Mykhailo Novitskyi Date: Fri, 18 Aug 2023 13:59:54 +0200 Subject: [PATCH 4/8] correct test assertion --- .../playwright/core/newDrivers/DriverManagerTest.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java index b5dcce5e..eec4ce88 100644 --- a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java @@ -1,6 +1,5 @@ package com.capgemini.mrchecker.playwright.core.newDrivers; -import static org.junit.Assert.assertTrue; import org.junit.jupiter.api.*; @@ -9,6 +8,8 @@ import com.capgemini.mrchecker.test.core.base.properties.PropertiesSettingsModule; import com.google.inject.Guice; +import static org.junit.jupiter.api.Assertions.assertTrue; + @UnitTest public class DriverManagerTest { private DriverManager driverManager; @@ -37,7 +38,7 @@ public void tearDown() { @Test public void test() { - assertTrue(true); + assertTrue(DriverManager.wasDriverCreated(), "Driver was not created"); } } From 6dcbdea4d71498217403223ca008073023c0f574 Mon Sep 17 00:00:00 2001 From: Mykhailo Novitskyi Date: Fri, 18 Aug 2023 14:00:57 +0200 Subject: [PATCH 5/8] correct test method name --- .../mrchecker/playwright/core/newDrivers/DriverManagerTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java index eec4ce88..1b954ffe 100644 --- a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java @@ -37,7 +37,7 @@ public void tearDown() { } @Test - public void test() { + public void shouldDriverBeCreated() { assertTrue(DriverManager.wasDriverCreated(), "Driver was not created"); } From 4098dfe09072d60406f6b9784f138a83f0794223 Mon Sep 17 00:00:00 2001 From: Mykhailo Novitskyi Date: Fri, 18 Aug 2023 14:04:10 +0200 Subject: [PATCH 6/8] add error message to assertion --- .../com/capgemini/mrchecker/playwright/unit/BasePageTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/BasePageTest.java b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/BasePageTest.java index 95a8ec11..c33b8d87 100644 --- a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/BasePageTest.java +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/BasePageTest.java @@ -15,6 +15,6 @@ class BasePageTest extends BaseTest { void testGetPageTitle() { TestPage testPage = PageFactory.getPageInstance(TestPage.class); testPage.load(); - Assertions.assertEquals("Google", testPage.pageTitle(), ""); + Assertions.assertEquals("Google", testPage.pageTitle(), "Wrong page title"); } } From faac50e8f096b5264258a46ec64c397e8f9660c0 Mon Sep 17 00:00:00 2001 From: Mykhailo Novitskyi Date: Thu, 12 Oct 2023 14:13:45 +0200 Subject: [PATCH 7/8] ignore setting proxy, if playwright.browser.proxy var is empty --- .../base/properties/PropertiesPlaywright.java | 133 +++++++++--------- 1 file changed, 67 insertions(+), 66 deletions(-) diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/main/java/com/capgemini/mrchecker/playwright/core/base/properties/PropertiesPlaywright.java b/mrchecker-framework-modules/mrchecker-playwright-module/src/main/java/com/capgemini/mrchecker/playwright/core/base/properties/PropertiesPlaywright.java index 0976bc49..e100dcbf 100644 --- a/mrchecker-framework-modules/mrchecker-playwright-module/src/main/java/com/capgemini/mrchecker/playwright/core/base/properties/PropertiesPlaywright.java +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/main/java/com/capgemini/mrchecker/playwright/core/base/properties/PropertiesPlaywright.java @@ -6,70 +6,71 @@ import com.microsoft.playwright.options.Proxy; public class PropertiesPlaywright { - private Proxy proxy; - private String channel; - private String browsersPath = "./lib/playwright"; - private int skipBrowserDownload = 0; - private boolean allowStaticPage = false; - private DriverCloseLevel driverCloseLevel = DriverCloseLevel.CLASS; - - @Inject(optional = true) - @SuppressWarnings("unused") - private void setProxy(@Named("playwright.browser.proxy") String proxy) { - this.proxy = new Proxy(proxy); - } - - public Proxy getProxy() { - return proxy; - } - - @Inject(optional = true) - @SuppressWarnings("unused") - private void setChannel(@Named("playwright.browser.channel") String channel) { - this.channel = channel; - } - - public String getChannel() { - return channel; - } - - @Inject(optional = true) - @SuppressWarnings("unused") - private void setBrowsersPath(@Named("playwright.browser.downloadPath") String browsersPath) { - this.browsersPath = browsersPath; - } - - public String getBrowsersPath() { - return browsersPath; - } - - @Inject(optional = true) - @SuppressWarnings("unused") - private void setSkipBrowserDownload(@Named("playwright.browser.skipDownload") int value) { - this.skipBrowserDownload = value; - } - - public int getSkipBrowserDownload() { - return skipBrowserDownload; - } - - @Inject(optional = true) - @SuppressWarnings("unused") - private void setAllowStaticPage(@Named("playwright.allowStaticPage") boolean value) { - this.allowStaticPage = value; - } - - public boolean getAllowStaticPage() { - return allowStaticPage; - } - - @Inject(optional = true) - @SuppressWarnings("unused") - private void setDriverCloseLevel(@Named("playwright.driverCloseLevel") String level) { - driverCloseLevel = DriverCloseLevel.fromText(level); - } - - public DriverCloseLevel getDriverCloseLevel() { - return driverCloseLevel; - } + private Proxy proxy; + private String channel; + private String browsersPath = "./lib/playwright"; + private int skipBrowserDownload = 0; + private boolean allowStaticPage = false; + private DriverCloseLevel driverCloseLevel = DriverCloseLevel.CLASS; + + @Inject(optional = true) + @SuppressWarnings("unused") + private void setProxy(@Named("playwright.browser.proxy") String proxy) { + if (!proxy.isEmpty()) + this.proxy = new Proxy(proxy); + } + + public Proxy getProxy() { + return proxy; + } + + @Inject(optional = true) + @SuppressWarnings("unused") + private void setChannel(@Named("playwright.browser.channel") String channel) { + this.channel = channel; + } + + public String getChannel() { + return channel; + } + + @Inject(optional = true) + @SuppressWarnings("unused") + private void setBrowsersPath(@Named("playwright.browser.downloadPath") String browsersPath) { + this.browsersPath = browsersPath; + } + + public String getBrowsersPath() { + return browsersPath; + } + + @Inject(optional = true) + @SuppressWarnings("unused") + private void setSkipBrowserDownload(@Named("playwright.browser.skipDownload") int value) { + this.skipBrowserDownload = value; + } + + public int getSkipBrowserDownload() { + return skipBrowserDownload; + } + + @Inject(optional = true) + @SuppressWarnings("unused") + private void setAllowStaticPage(@Named("playwright.allowStaticPage") boolean value) { + this.allowStaticPage = value; + } + + public boolean getAllowStaticPage() { + return allowStaticPage; + } + + @Inject(optional = true) + @SuppressWarnings("unused") + private void setDriverCloseLevel(@Named("playwright.driverCloseLevel") String level) { + driverCloseLevel = DriverCloseLevel.fromText(level); + } + + public DriverCloseLevel getDriverCloseLevel() { + return driverCloseLevel; + } } \ No newline at end of file From 2b1c4a618daf7ad77aa9f76a9bbbc08d1969cbe1 Mon Sep 17 00:00:00 2001 From: Mykhailo Novitskyi Date: Thu, 12 Oct 2023 14:14:25 +0200 Subject: [PATCH 8/8] add new line at EOF + format --- .../src/resources/settings.properties | 6 +++--- .../playwright/core/newDrivers/DriverManagerTest.java | 3 +-- .../com/capgemini/mrchecker/playwright/tags/UnitTest.java | 2 +- .../mrchecker/playwright/unit/DefaultDriverBrowserTest.java | 2 +- .../playwright/unit/base/runtime/RuntimeParametersTest.java | 2 +- .../src/test/resources/allure.properties | 2 +- .../src/test/resources/junit-platform.properties | 2 +- 7 files changed, 9 insertions(+), 10 deletions(-) diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/resources/settings.properties b/mrchecker-framework-modules/mrchecker-playwright-module/src/resources/settings.properties index cacf7669..d10f6bb3 100644 --- a/mrchecker-framework-modules/mrchecker-playwright-module/src/resources/settings.properties +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/resources/settings.properties @@ -1,6 +1,6 @@ -#playwright.browser.proxy= -#playwright.browser.channel= +playwright.browser.proxy= +playwright.browser.channel= playwright.browser.downloadPath=./lib/playwright playwright.browser.skipDownload=0 playwright.allowStaticPage=false -playwright.driverCloseLevel=class \ No newline at end of file +playwright.driverCloseLevel=class diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java index 1b954ffe..af97e562 100644 --- a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/core/newDrivers/DriverManagerTest.java @@ -1,5 +1,6 @@ package com.capgemini.mrchecker.playwright.core.newDrivers; +import static org.junit.jupiter.api.Assertions.assertTrue; import org.junit.jupiter.api.*; @@ -8,8 +9,6 @@ import com.capgemini.mrchecker.test.core.base.properties.PropertiesSettingsModule; import com.google.inject.Guice; -import static org.junit.jupiter.api.Assertions.assertTrue; - @UnitTest public class DriverManagerTest { private DriverManager driverManager; diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/tags/UnitTest.java b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/tags/UnitTest.java index b3c3dddb..e130b74a 100644 --- a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/tags/UnitTest.java +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/tags/UnitTest.java @@ -11,4 +11,4 @@ @Retention(RetentionPolicy.RUNTIME) @Tag("UnitTest") public @interface UnitTest { -} \ No newline at end of file +} diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/DefaultDriverBrowserTest.java b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/DefaultDriverBrowserTest.java index 79d75b31..905f41d0 100644 --- a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/DefaultDriverBrowserTest.java +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/DefaultDriverBrowserTest.java @@ -41,4 +41,4 @@ public void testParameterGetChrome() { assertEquals("chromium", driverName, "Wrong browser name"); } -} \ No newline at end of file +} diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/base/runtime/RuntimeParametersTest.java b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/base/runtime/RuntimeParametersTest.java index 0b248190..f774277a 100644 --- a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/base/runtime/RuntimeParametersTest.java +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/java/com/capgemini/mrchecker/playwright/unit/base/runtime/RuntimeParametersTest.java @@ -171,4 +171,4 @@ public void shouldToStringReturnKeyValue() { assertThat(toStringValue, is(equalTo("browser=" + STARTUP_PARAMETERS_VALUES.get("browser")))); } -} \ No newline at end of file +} diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/allure.properties b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/allure.properties index 6c1e0bb1..80b02dde 100644 --- a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/allure.properties +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/allure.properties @@ -1 +1 @@ -allure.results.directory=target/allure-results \ No newline at end of file +allure.results.directory=target/allure-results diff --git a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/junit-platform.properties b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/junit-platform.properties index 94ae49e0..301a809c 100644 --- a/mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/junit-platform.properties +++ b/mrchecker-framework-modules/mrchecker-playwright-module/src/test/resources/junit-platform.properties @@ -7,4 +7,4 @@ junit.jupiter.execution.parallel.mode.classes.default=concurrent junit.jupiter.execution.parallel.config.strategy=dynamic junit.jupiter.execution.parallel.config.dynamic.factor=1 cucumber.ansi-colors.disabled=false -cucumber.publish.quiet=true \ No newline at end of file +cucumber.publish.quiet=true