diff --git a/pom.xml b/pom.xml
index 0ed6b076..ae65f372 100644
--- a/pom.xml
+++ b/pom.xml
@@ -48,7 +48,7 @@
6.0.2
5.21.0
- 2.20.1
+ 2.21.0
8.12.6
4.38.0
2.0.17
@@ -217,7 +217,7 @@
ch.qos.logback
logback-classic
- 1.5.24
+ 1.5.26
org.slf4j
@@ -382,7 +382,7 @@
com.diffplug.spotless
spotless-maven-plugin
- 3.1.0
+ 3.2.0
diff --git a/spectrum/pom.xml b/spectrum/pom.xml
index 231e93fd..72f7bb0a 100644
--- a/spectrum/pom.xml
+++ b/spectrum/pom.xml
@@ -373,7 +373,7 @@
central
true
- published
+ uploaded
diff --git a/spectrum/src/main/java/io/github/giulong/spectrum/SpectrumPage.java b/spectrum/src/main/java/io/github/giulong/spectrum/SpectrumPage.java
index 9440ba87..ff0cf19d 100644
--- a/spectrum/src/main/java/io/github/giulong/spectrum/SpectrumPage.java
+++ b/spectrum/src/main/java/io/github/giulong/spectrum/SpectrumPage.java
@@ -2,7 +2,6 @@
import java.lang.reflect.Field;
import java.lang.reflect.Proxy;
-import java.time.Duration;
import java.util.List;
import io.github.giulong.spectrum.interfaces.Endpoint;
@@ -17,7 +16,7 @@
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.PageFactory;
-import org.openqa.selenium.support.pagefactory.AjaxElementLocatorFactory;
+import org.openqa.selenium.support.pagefactory.ElementLocatorFactory;
@Slf4j
@Getter
@@ -85,8 +84,8 @@ SpectrumPage, Data> init() {
log.debug("The endpoint of page '{}' is '{}'", className, endpointValue);
Reflections.setField("endpoint", this, endpointValue);
- final Duration autoWaitDuration = configuration.getDrivers().getWaits().getAuto().getTimeout();
- PageFactory.initElements(new SpectrumFieldDecorator(new AjaxElementLocatorFactory(driver, (int) autoWaitDuration.toSeconds())), this);
+ final ElementLocatorFactory locatorFactory = configuration.getDrivers().getLocatorFactory().buildFor(driver);
+ PageFactory.initElements(new SpectrumFieldDecorator(locatorFactory), this);
Reflections
.getAnnotatedFields(this, JsWebElement.class)
diff --git a/spectrum/src/main/java/io/github/giulong/spectrum/element_locator_factories/AjaxLocatorFactory.java b/spectrum/src/main/java/io/github/giulong/spectrum/element_locator_factories/AjaxLocatorFactory.java
new file mode 100644
index 00000000..27f5834f
--- /dev/null
+++ b/spectrum/src/main/java/io/github/giulong/spectrum/element_locator_factories/AjaxLocatorFactory.java
@@ -0,0 +1,31 @@
+package io.github.giulong.spectrum.element_locator_factories;
+
+import java.time.Duration;
+
+import com.fasterxml.jackson.annotation.JsonPropertyDescription;
+
+import io.github.giulong.spectrum.interfaces.JsonSchemaTypes;
+import io.github.giulong.spectrum.interfaces.LocatorFactory;
+
+import lombok.Getter;
+import lombok.extern.slf4j.Slf4j;
+
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.support.pagefactory.AjaxElementLocatorFactory;
+import org.openqa.selenium.support.pagefactory.ElementLocatorFactory;
+
+@Slf4j
+@Getter
+@SuppressWarnings("unused")
+public class AjaxLocatorFactory implements LocatorFactory {
+
+ @JsonPropertyDescription("Timeout in seconds")
+ @JsonSchemaTypes(double.class)
+ private Duration timeout;
+
+ @Override
+ public ElementLocatorFactory buildFor(final WebDriver driver) {
+ log.debug("Configuring AjaxElementLocatorFactory with a timeout of {}", timeout);
+ return new AjaxElementLocatorFactory(driver, (int) timeout.toSeconds());
+ }
+}
diff --git a/spectrum/src/main/java/io/github/giulong/spectrum/element_locator_factories/DefaultLocatorFactory.java b/spectrum/src/main/java/io/github/giulong/spectrum/element_locator_factories/DefaultLocatorFactory.java
new file mode 100644
index 00000000..97377f1e
--- /dev/null
+++ b/spectrum/src/main/java/io/github/giulong/spectrum/element_locator_factories/DefaultLocatorFactory.java
@@ -0,0 +1,19 @@
+package io.github.giulong.spectrum.element_locator_factories;
+
+import io.github.giulong.spectrum.interfaces.LocatorFactory;
+
+import lombok.extern.slf4j.Slf4j;
+
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.support.pagefactory.DefaultElementLocatorFactory;
+import org.openqa.selenium.support.pagefactory.ElementLocatorFactory;
+
+@Slf4j
+public class DefaultLocatorFactory implements LocatorFactory {
+
+ @Override
+ public ElementLocatorFactory buildFor(final WebDriver driver) {
+ log.debug("Configuring DefaultElementLocatorFactory");
+ return new DefaultElementLocatorFactory(driver);
+ }
+}
diff --git a/spectrum/src/main/java/io/github/giulong/spectrum/interfaces/LocatorFactory.java b/spectrum/src/main/java/io/github/giulong/spectrum/interfaces/LocatorFactory.java
new file mode 100644
index 00000000..69405f17
--- /dev/null
+++ b/spectrum/src/main/java/io/github/giulong/spectrum/interfaces/LocatorFactory.java
@@ -0,0 +1,22 @@
+package io.github.giulong.spectrum.interfaces;
+
+import static com.fasterxml.jackson.annotation.JsonTypeInfo.As.WRAPPER_OBJECT;
+import static com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME;
+
+import com.fasterxml.jackson.annotation.JsonSubTypes;
+import com.fasterxml.jackson.annotation.JsonTypeInfo;
+
+import io.github.giulong.spectrum.element_locator_factories.AjaxLocatorFactory;
+import io.github.giulong.spectrum.element_locator_factories.DefaultLocatorFactory;
+
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.support.pagefactory.ElementLocatorFactory;
+
+@JsonTypeInfo(use = NAME, include = WRAPPER_OBJECT)
+@JsonSubTypes({
+ @JsonSubTypes.Type(value = DefaultLocatorFactory.class, name = "default"),
+ @JsonSubTypes.Type(value = AjaxLocatorFactory.class, name = "ajax"),
+})
+public interface LocatorFactory {
+ ElementLocatorFactory buildFor(WebDriver driver);
+}
diff --git a/spectrum/src/main/java/io/github/giulong/spectrum/internals/jackson/deserializers/interpolation/interpolators/Interpolator.java b/spectrum/src/main/java/io/github/giulong/spectrum/internals/jackson/deserializers/interpolation/interpolators/Interpolator.java
index 5a20ed2f..383289f5 100644
--- a/spectrum/src/main/java/io/github/giulong/spectrum/internals/jackson/deserializers/interpolation/interpolators/Interpolator.java
+++ b/spectrum/src/main/java/io/github/giulong/spectrum/internals/jackson/deserializers/interpolation/interpolators/Interpolator.java
@@ -1,5 +1,7 @@
package io.github.giulong.spectrum.internals.jackson.deserializers.interpolation.interpolators;
+import static com.fasterxml.jackson.annotation.OptBoolean.TRUE;
+
import java.util.Optional;
import com.fasterxml.jackson.annotation.JacksonInject;
@@ -12,7 +14,7 @@
public abstract class Interpolator {
@SuppressWarnings("unused")
- @JacksonInject("enabledFromClient")
+ @JacksonInject(value = "enabledFromClient", optional = TRUE)
@JsonPropertyDescription("Whether to enable this interpolator. Injected to true by default, so no need to explicitly set it")
private boolean enabled;
diff --git a/spectrum/src/main/java/io/github/giulong/spectrum/utils/Configuration.java b/spectrum/src/main/java/io/github/giulong/spectrum/utils/Configuration.java
index 35ae1c11..de148fdb 100644
--- a/spectrum/src/main/java/io/github/giulong/spectrum/utils/Configuration.java
+++ b/spectrum/src/main/java/io/github/giulong/spectrum/utils/Configuration.java
@@ -1,5 +1,6 @@
package io.github.giulong.spectrum.utils;
+import static com.fasterxml.jackson.annotation.OptBoolean.TRUE;
import static lombok.AccessLevel.PRIVATE;
import java.io.File;
@@ -17,6 +18,7 @@
import io.github.giulong.spectrum.drivers.Driver;
import io.github.giulong.spectrum.enums.Frame;
import io.github.giulong.spectrum.interfaces.JsonSchemaTypes;
+import io.github.giulong.spectrum.interfaces.LocatorFactory;
import io.github.giulong.spectrum.internals.jackson.deserializers.interpolation.interpolators.EnvironmentInterpolator;
import io.github.giulong.spectrum.internals.jackson.deserializers.interpolation.interpolators.InPlaceInterpolator;
import io.github.giulong.spectrum.internals.jackson.deserializers.interpolation.interpolators.PropertiesInterpolator;
@@ -160,7 +162,7 @@ public static class Application {
public static class Highlight {
@JsonIgnore
- @JacksonInject("enabledFromClient")
+ @JacksonInject(value = "enabledFromClient", optional = TRUE)
private boolean enabled;
@JsonPropertyDescription("Path to the js used to highlight. Relative to the resources folder")
@@ -172,7 +174,7 @@ public static class Highlight {
public static class VisualRegression {
@JsonIgnore
- @JacksonInject("enabledFromClient")
+ @JacksonInject(value = "enabledFromClient", optional = TRUE)
private boolean enabled;
@JsonPropertyDescription("Whether to fail immediately when the first visual regression is found, rather than running the entire test")
@@ -275,6 +277,9 @@ public static class Drivers {
@JsonPropertyDescription("Driver's fluent waits")
private Waits waits;
+ @JsonPropertyDescription("An instance of ElementLocatorFactory to be used across Drivers")
+ private LocatorFactory locatorFactory;
+
@JsonPropertyDescription("Chrome capabilities. See: https://www.selenium.dev/documentation/webdriver/browsers/chrome/")
private Chrome chrome;
diff --git a/spectrum/src/main/java/io/github/giulong/spectrum/utils/file_providers/InternalFileProvider.java b/spectrum/src/main/java/io/github/giulong/spectrum/utils/file_providers/InternalFileProvider.java
index 69d9c9c9..74b1787d 100644
--- a/spectrum/src/main/java/io/github/giulong/spectrum/utils/file_providers/InternalFileProvider.java
+++ b/spectrum/src/main/java/io/github/giulong/spectrum/utils/file_providers/InternalFileProvider.java
@@ -19,8 +19,7 @@ public Class extends Views> getViews() {
@Override
public InjectableValues getInjectableValues() {
- return new InjectableValues.Std()
- .addValue("enabledFromClient", false);
+ return null;
}
@Override
diff --git a/spectrum/src/main/java/io/github/giulong/spectrum/utils/testbook/TestBook.java b/spectrum/src/main/java/io/github/giulong/spectrum/utils/testbook/TestBook.java
index b7e8f962..570f1d83 100644
--- a/spectrum/src/main/java/io/github/giulong/spectrum/utils/testbook/TestBook.java
+++ b/spectrum/src/main/java/io/github/giulong/spectrum/utils/testbook/TestBook.java
@@ -1,5 +1,6 @@
package io.github.giulong.spectrum.utils.testbook;
+import static com.fasterxml.jackson.annotation.OptBoolean.TRUE;
import static io.github.giulong.spectrum.enums.Result.*;
import static java.util.function.Function.identity;
import static java.util.stream.Collectors.toMap;
@@ -38,7 +39,7 @@ public class TestBook implements SessionHook, Reportable {
private final FileUtils fileUtils = FileUtils.getInstance();
@JsonIgnore
- @JacksonInject("enabledFromClient")
+ @JacksonInject(value = "enabledFromClient", optional = TRUE)
@SuppressWarnings("unused")
private boolean enabled;
diff --git a/spectrum/src/main/resources/yaml/configuration.default.yaml b/spectrum/src/main/resources/yaml/configuration.default.yaml
index 53045e6b..f7fb2094 100644
--- a/spectrum/src/main/resources/yaml/configuration.default.yaml
+++ b/spectrum/src/main/resources/yaml/configuration.default.yaml
@@ -119,6 +119,11 @@ drivers:
enabled: true # Whether to enable the auto-wait
timeout: 30 # Timeout in seconds
+ # The ElementLocatorFactory to be used across Drivers
+ locatorFactory:
+ ajax:
+ timeout: 30
+
# Chrome capabilities. See: https://www.selenium.dev/documentation/webdriver/browsers/chrome/
chrome:
biDi: false # Whether to enable the BiDi protocol instead of CDP
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/SpectrumPageTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/SpectrumPageTest.java
index f54015b7..7e56f32b 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/SpectrumPageTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/SpectrumPageTest.java
@@ -7,11 +7,11 @@
import java.lang.reflect.Field;
import java.lang.reflect.Proxy;
-import java.time.Duration;
import java.util.List;
import java.util.stream.Stream;
import io.github.giulong.spectrum.interfaces.JsWebElement;
+import io.github.giulong.spectrum.interfaces.LocatorFactory;
import io.github.giulong.spectrum.interfaces.Secured;
import io.github.giulong.spectrum.internals.page_factory.SpectrumFieldDecorator;
import io.github.giulong.spectrum.utils.Configuration;
@@ -31,7 +31,7 @@
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.PageFactory;
-import org.openqa.selenium.support.pagefactory.AjaxElementLocatorFactory;
+import org.openqa.selenium.support.pagefactory.ElementLocatorFactory;
class SpectrumPageTest {
@@ -62,15 +62,6 @@ class SpectrumPageTest {
@Mock
private Configuration.Drivers drivers;
- @Mock
- private Configuration.Drivers.Waits waits;
-
- @Mock
- private Configuration.Drivers.Waits.AutoWait auto;
-
- @Mock
- private Duration timeout;
-
@Mock
private Configuration.Application application;
@@ -149,23 +140,18 @@ static Stream valuesProvider() {
@DisplayName("init should set the endpoint, init the web elements, add the secured web elements, set the js web elements, and return the page instance")
void init() {
final WebElement proxy = mock();
- final long seconds = 123L;
+ final LocatorFactory locatorFactory = mock();
+ final ElementLocatorFactory elementLocatorFactory = mock();
when(jsWebElementProxyBuilder.buildFor(webElementArgumentCaptor.capture())).thenReturn(proxy);
when(JsWebElementListInvocationHandler.builder()).thenReturn(jsWebElementListInvocationHandlerBuilder);
when(configuration.getDrivers()).thenReturn(drivers);
- when(drivers.getWaits()).thenReturn(waits);
- when(waits.getAuto()).thenReturn(auto);
- when(auto.getTimeout()).thenReturn(timeout);
- when(timeout.toSeconds()).thenReturn(seconds);
-
- final MockedConstruction factoryMockedConstruction = mockConstruction(AjaxElementLocatorFactory.class, (mock, context) -> {
- assertEquals(webDriver, context.arguments().getFirst());
- assertEquals((int) seconds, context.arguments().get(1));
- });
+ when(drivers.getLocatorFactory()).thenReturn(locatorFactory);
+ when(locatorFactory.buildFor(webDriver)).thenReturn(elementLocatorFactory);
- final MockedConstruction decoratorMockedConstruction = mockConstruction(SpectrumFieldDecorator.class);
+ final MockedConstruction decoratorMockedConstruction = mockConstruction(
+ (mock, context) -> assertEquals(elementLocatorFactory, context.arguments().getFirst()));
assertEquals(spectrumPage, spectrumPage.init());
@@ -176,7 +162,6 @@ void init() {
assertEquals(proxy, Reflections.getFieldValue("jsWebElement", spectrumPage));
- factoryMockedConstruction.close();
decoratorMockedConstruction.close();
}
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/SpectrumTestTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/SpectrumTestTest.java
index 2d309b63..b8ded0fd 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/SpectrumTestTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/SpectrumTestTest.java
@@ -5,7 +5,6 @@
import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.when;
-import java.time.Duration;
import java.util.List;
import com.aventstack.extentreports.ExtentReports;
@@ -14,6 +13,7 @@
import io.github.giulong.spectrum.exceptions.TestFailedException;
import io.github.giulong.spectrum.interfaces.Endpoint;
import io.github.giulong.spectrum.interfaces.JsWebElement;
+import io.github.giulong.spectrum.interfaces.LocatorFactory;
import io.github.giulong.spectrum.types.DownloadWait;
import io.github.giulong.spectrum.types.ImplicitWait;
import io.github.giulong.spectrum.types.PageLoadWait;
@@ -41,6 +41,7 @@
import org.openqa.selenium.bidi.module.LogInspector;
import org.openqa.selenium.bidi.module.Network;
import org.openqa.selenium.interactions.Actions;
+import org.openqa.selenium.support.pagefactory.ElementLocatorFactory;
class SpectrumTestTest {
@@ -90,15 +91,6 @@ class SpectrumTestTest {
@Mock
private Configuration.Drivers drivers;
- @Mock
- private Configuration.Drivers.Waits waits;
-
- @Mock
- private Configuration.Drivers.Waits.AutoWait auto;
-
- @Mock
- private Duration timeout;
-
@Mock
private ExtentReports extentReports;
@@ -176,17 +168,14 @@ void testBeforeAll() {
void testBeforeEach() {
// injectDataIn
final String folder = "folder";
+ final LocatorFactory locatorFactory = mock();
+ final ElementLocatorFactory elementLocatorFactory = mock();
when(configuration.getData()).thenReturn(dataConfiguration);
when(dataConfiguration.getFolder()).thenReturn(folder);
when(yamlUtils.readClient(folder + "/data.yaml", FakeData.class)).thenReturn(data);
-
- final long seconds = 123L;
when(configuration.getDrivers()).thenReturn(drivers);
- when(drivers.getWaits()).thenReturn(waits);
- when(waits.getAuto()).thenReturn(auto);
- when(auto.getTimeout()).thenReturn(timeout);
- when(timeout.toSeconds()).thenReturn(seconds);
-
+ when(drivers.getLocatorFactory()).thenReturn(locatorFactory);
+ when(locatorFactory.buildFor(driver)).thenReturn(elementLocatorFactory);
when(statefulExtentTest.getCurrentNode()).thenReturn(extentTest);
assertNull(childTestVoid.childTestPage);
@@ -247,12 +236,11 @@ void testBaseSpectrumAfterEachThrows() {
@Test
@DisplayName("injectPages should init also init pages from super classes")
void injectPages() {
- final long seconds = 123L;
+ final LocatorFactory locatorFactory = mock();
+ final ElementLocatorFactory elementLocatorFactory = mock();
when(configuration.getDrivers()).thenReturn(drivers);
- when(drivers.getWaits()).thenReturn(waits);
- when(waits.getAuto()).thenReturn(auto);
- when(auto.getTimeout()).thenReturn(timeout);
- when(timeout.toSeconds()).thenReturn(seconds);
+ when(drivers.getLocatorFactory()).thenReturn(locatorFactory);
+ when(locatorFactory.buildFor(driver)).thenReturn(elementLocatorFactory);
assertNull(childTest.childTestPage);
assertNull(childTest.getParentTestPage());
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/AndroidTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/AndroidTest.java
index f2b0619a..108c6718 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/AndroidTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/AndroidTest.java
@@ -61,7 +61,7 @@ void configureWaitsOf() {
@Test
@DisplayName("buildDriverFor should return a new instance of AndroidDriver for the provided url and the instance capabilities")
void buildDriverFor() {
- MockedConstruction androidDriverMockedConstruction = mockConstruction(AndroidDriver.class, (mock, context) -> {
+ MockedConstruction androidDriverMockedConstruction = mockConstruction((mock, context) -> {
assertEquals(url, context.arguments().getFirst());
assertEquals(capabilities, context.arguments().get(1));
});
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/AppiumGenericTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/AppiumGenericTest.java
index b330faf4..144be88b 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/AppiumGenericTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/AppiumGenericTest.java
@@ -53,7 +53,7 @@ void beforeEach() {
@Test
@DisplayName("buildCapabilities should build a new instance of capabilities and set the capabilities from the yaml on it")
void buildCapabilitiesAbsoluteAppPath() {
- MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(MutableCapabilities.class,
+ MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(
(mock, context) -> assertEquals(capabilities, context.arguments().getFirst()));
when(configuration.getDrivers()).thenReturn(drivers);
@@ -71,7 +71,7 @@ void buildCapabilitiesAbsoluteAppPath() {
@Test
@DisplayName("buildDriverFor should return a new instance of AppiumDriver for the provided url and the instance capabilities")
void buildDriverFor() {
- MockedConstruction appiumDriverMockedConstruction = mockConstruction(AppiumDriver.class, (mock, context) -> {
+ MockedConstruction appiumDriverMockedConstruction = mockConstruction((mock, context) -> {
assertEquals(url, context.arguments().getFirst());
assertEquals(mutableCapabilities, context.arguments().get(1));
});
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/AppiumTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/AppiumTest.java
index 701c9047..41d49bc8 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/AppiumTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/AppiumTest.java
@@ -56,7 +56,7 @@ void getDriverServiceBuilder() {
when(service.getPort()).thenReturn(port);
when(service.getTimeout()).thenReturn(timeout);
- MockedConstruction appiumServiceBuilderMockedConstruction = mockConstruction(AppiumServiceBuilder.class, (mock, context) -> {
+ MockedConstruction appiumServiceBuilderMockedConstruction = mockConstruction((mock, context) -> {
when(mock.withIPAddress(ipAddress)).thenReturn(mock);
when(mock.usingPort(port)).thenReturn(mock);
when(mock.withTimeout(timeout)).thenReturn(mock);
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/ChromeTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/ChromeTest.java
index 19d6e20c..6ac8ad77 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/ChromeTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/ChromeTest.java
@@ -70,7 +70,7 @@ void getDriverServiceBuilder() {
when(service.isVerbose()).thenReturn(true);
when(service.getAllowedListIps()).thenReturn(allowedListIps);
- MockedConstruction chromeDriverServiceMockedConstruction = mockConstruction(ChromeDriverService.Builder.class, (mock, context) -> {
+ MockedConstruction chromeDriverServiceMockedConstruction = mockConstruction((mock, context) -> {
when(mock.withBuildCheckDisabled(true)).thenReturn(mock);
when(mock.withAppendLog(true)).thenReturn(mock);
when(mock.withReadableTimestamp(true)).thenReturn(mock);
@@ -106,9 +106,9 @@ void buildCapabilities() {
when(driversConfig.isBiDi()).thenReturn(false);
lenient().when(chromeConfig.isBiDi()).thenReturn(true);
- MockedConstruction chromeOptionsMockedConstruction = mockConstruction(ChromeOptions.class,
+ MockedConstruction chromeOptionsMockedConstruction = mockConstruction(
(mock, context) -> when(mock.addArguments(arguments)).thenReturn(mock));
- MockedConstruction loggingPreferencesMockedConstruction = mockConstruction(LoggingPreferences.class);
+ MockedConstruction loggingPreferencesMockedConstruction = mockConstruction();
chrome.buildCapabilities();
final ChromeOptions chromeOptions = chromeOptionsMockedConstruction.constructed().getFirst();
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/ChromiumTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/ChromiumTest.java
index ea164e60..81976da0 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/ChromiumTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/ChromiumTest.java
@@ -46,7 +46,7 @@ void setLoggingPreferencesFrom() {
when(logs.getDriver()).thenReturn(driverLevel);
when(logs.getPerformance()).thenReturn(performanceLevel);
- MockedConstruction mockedConstruction = mockConstruction(LoggingPreferences.class);
+ MockedConstruction mockedConstruction = mockConstruction();
chrome.capabilities = capabilities;
chrome.setLoggingPreferencesFrom(logs);
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/DriverTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/DriverTest.java
index c9e5d250..b2a8bb68 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/DriverTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/DriverTest.java
@@ -100,7 +100,7 @@ void beforeEach() {
WEB_DRIVER_THREAD_LOCAL.remove();
threadGuardMockedStatic = mockStatic();
- loggingPreferencesMockedConstruction = mockConstruction(LoggingPreferences.class);
+ loggingPreferencesMockedConstruction = mockConstruction();
}
@AfterEach
@@ -115,7 +115,7 @@ void mergeGridCapabilitiesFrom() {
Reflections.setField("capabilities", driver, driverOptions);
when(driverOptions.merge(desiredCapabilitiesArgumentCaptor.capture())).thenReturn(driverOptions);
- MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(DesiredCapabilities.class, (mock, context) -> {
+ MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction((mock, context) -> {
assertEquals(gridCapabilities, context.arguments().getFirst());
});
@@ -142,9 +142,8 @@ void build() {
when(chromeConfig.getCapabilities()).thenReturn(Map.of());
when(chromeConfig.getExperimentalOptions()).thenReturn(Map.of());
- MockedConstruction chromeOptionsMockedConstruction = mockConstruction(ChromeOptions.class, (mock, context) -> {
- when(mock.addArguments(arguments)).thenReturn(mock);
- });
+ MockedConstruction chromeOptionsMockedConstruction = mockConstruction(
+ (mock, context) -> when(mock.addArguments(arguments)).thenReturn(mock));
when(waits.getImplicit()).thenReturn(implicitDuration);
when(waits.getPageLoadTimeout()).thenReturn(pageLoadDuration);
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/EdgeTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/EdgeTest.java
index 11f352bd..f92646d5 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/EdgeTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/EdgeTest.java
@@ -70,7 +70,7 @@ void getDriverServiceBuilder() {
when(service.isVerbose()).thenReturn(true);
when(service.getAllowedListIps()).thenReturn(allowedListIps);
- MockedConstruction edgeDriverServiceMockedConstruction = mockConstruction(EdgeDriverService.Builder.class, (mock, context) -> {
+ MockedConstruction edgeDriverServiceMockedConstruction = mockConstruction((mock, context) -> {
when(mock.withBuildCheckDisabled(true)).thenReturn(mock);
when(mock.withAppendLog(true)).thenReturn(mock);
when(mock.withReadableTimestamp(true)).thenReturn(mock);
@@ -106,9 +106,9 @@ void buildCapabilities() {
when(driversConfig.isBiDi()).thenReturn(false);
lenient().when(edgeConfig.isBiDi()).thenReturn(true);
- MockedConstruction edgeOptionsMockedConstruction = mockConstruction(EdgeOptions.class,
+ MockedConstruction edgeOptionsMockedConstruction = mockConstruction(
(mock, context) -> when(mock.addArguments(arguments)).thenReturn(mock));
- MockedConstruction loggingPreferencesMockedConstruction = mockConstruction(LoggingPreferences.class);
+ MockedConstruction loggingPreferencesMockedConstruction = mockConstruction();
edge.buildCapabilities();
final EdgeOptions edgeOptions = edgeOptionsMockedConstruction.constructed().getFirst();
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/EspressoTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/EspressoTest.java
index f637dbdc..c3311af1 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/EspressoTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/EspressoTest.java
@@ -52,7 +52,7 @@ void buildCapabilities() {
final String appPath = path.toString();
final String appAbsolutePath = path.toAbsolutePath().toString();
- MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(EspressoOptions.class,
+ MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(
(mock, context) -> assertEquals(capabilities, context.arguments().getFirst()));
when(configuration.getDrivers()).thenReturn(drivers);
@@ -76,7 +76,7 @@ void buildCapabilities() {
void buildCapabilitiesAbsoluteAppPath() {
final String appPath = Path.of("absolute", "path").toAbsolutePath().toString();
- MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(EspressoOptions.class,
+ MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(
(mock, context) -> assertEquals(capabilities, context.arguments().getFirst()));
when(configuration.getDrivers()).thenReturn(drivers);
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/FirefoxTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/FirefoxTest.java
index 3453068a..b50cc780 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/FirefoxTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/FirefoxTest.java
@@ -55,7 +55,7 @@ void getDriverServiceBuilder() {
when(service.isTruncatedLogs()).thenReturn(true);
when(service.getProfileRoot()).thenReturn(profileRoot);
- MockedConstruction chromeDriverServiceMockedConstruction = mockConstruction(GeckoDriverService.Builder.class, (mock, context) -> {
+ MockedConstruction chromeDriverServiceMockedConstruction = mockConstruction((mock, context) -> {
when(mock.withAllowHosts(allowHosts)).thenReturn(mock);
when(mock.withLogLevel(FirefoxDriverLogLevel.TRACE)).thenReturn(mock);
when(mock.withTruncatedLogs(true)).thenReturn(mock);
@@ -86,7 +86,7 @@ void buildCapabilities() {
when(driversConfig.isBiDi()).thenReturn(false);
lenient().when(firefoxConfig.isBiDi()).thenReturn(true);
- MockedConstruction firefoxOptionsMockedConstruction = mockConstruction(FirefoxOptions.class, (mock, context) -> {
+ MockedConstruction firefoxOptionsMockedConstruction = mockConstruction((mock, context) -> {
when(mock.addArguments(arguments)).thenReturn(mock);
when(mock.setBinary(binary)).thenReturn(mock);
});
@@ -120,7 +120,7 @@ void buildCapabilitiesNoBinary() {
when(driversConfig.isBiDi()).thenReturn(false);
lenient().when(firefoxConfig.isBiDi()).thenReturn(true);
- final MockedConstruction firefoxOptionsMockedConstruction = mockConstruction(FirefoxOptions.class,
+ final MockedConstruction firefoxOptionsMockedConstruction = mockConstruction(
(mock, context) -> when(mock.addArguments(arguments)).thenReturn(mock));
firefox.buildCapabilities();
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/Mac2Test.java b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/Mac2Test.java
index 9abb53ab..77a65ec7 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/Mac2Test.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/Mac2Test.java
@@ -52,7 +52,7 @@ void beforeEach() {
@Test
@DisplayName("buildCapabilities should build a new instance of mac2Options and set the capabilities from the yaml on it")
void buildCapabilitiesAbsoluteAppPath() {
- MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(Mac2Options.class,
+ MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(
(mock, context) -> assertEquals(capabilities, context.arguments().getFirst()));
when(configuration.getDrivers()).thenReturn(drivers);
@@ -70,7 +70,7 @@ void buildCapabilitiesAbsoluteAppPath() {
@Test
@DisplayName("buildDriverFor should return a new instance of Mac2Driver for the provided url and the instance capabilities")
void buildDriverFor() {
- MockedConstruction mac2DriverMockedConstruction = mockConstruction(Mac2Driver.class, (mock, context) -> {
+ MockedConstruction mac2DriverMockedConstruction = mockConstruction((mock, context) -> {
assertEquals(url, context.arguments().getFirst());
assertEquals(mac2Options, context.arguments().get(1));
});
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/SafariTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/SafariTest.java
index f8a9688f..c17011c7 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/SafariTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/SafariTest.java
@@ -46,7 +46,7 @@ void getDriverServiceBuilder(final boolean logging) {
when(safariConfig.getService()).thenReturn(service);
when(service.isLogging()).thenReturn(logging);
- MockedConstruction safariDriverServiceMockedConstruction = mockConstruction(SafariDriverService.Builder.class,
+ MockedConstruction safariDriverServiceMockedConstruction = mockConstruction(
(mock, context) -> when(mock.withLogging(logging)).thenReturn(mock));
final DriverService.Builder driverServiceBuilder = safari.getDriverServiceBuilder();
@@ -58,7 +58,7 @@ void getDriverServiceBuilder(final boolean logging) {
@Test
@DisplayName("buildCapabilitiesFrom should build an instance of Safari based on the provided configuration")
void buildCapabilitiesFrom() {
- MockedConstruction safariOptionsMockedConstruction = mockConstruction(SafariOptions.class);
+ MockedConstruction safariOptionsMockedConstruction = mockConstruction();
safari.buildCapabilities();
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/UiAutomator2Test.java b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/UiAutomator2Test.java
index 7653ea03..a50c56b5 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/UiAutomator2Test.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/UiAutomator2Test.java
@@ -53,7 +53,7 @@ void buildCapabilities() {
final String appPath = path.toString();
final String appAbsolutePath = path.toAbsolutePath().toString();
- MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(UiAutomator2Options.class,
+ MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(
(mock, context) -> assertEquals(capabilities, context.arguments().getFirst()));
when(configuration.getDrivers()).thenReturn(drivers);
@@ -78,7 +78,7 @@ void buildCapabilities() {
void buildCapabilitiesAbsoluteAppPath() {
final String appPath = Path.of("absolute", "path").toAbsolutePath().toString();
- MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(UiAutomator2Options.class,
+ MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(
(mock, context) -> assertEquals(capabilities, context.arguments().getFirst()));
when(configuration.getDrivers()).thenReturn(drivers);
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/WindowsTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/WindowsTest.java
index 38ba4054..dc783d17 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/WindowsTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/WindowsTest.java
@@ -81,7 +81,7 @@ void configureWaitsOf() {
@Test
@DisplayName("buildCapabilities should build a new instance of windowsOptions and set the capabilities from the yaml on it")
void buildCapabilitiesAbsoluteAppPath() {
- MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(WindowsOptions.class,
+ MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(
(mock, context) -> assertEquals(capabilities, context.arguments().getFirst()));
when(configuration.getDrivers()).thenReturn(drivers);
@@ -99,7 +99,7 @@ void buildCapabilitiesAbsoluteAppPath() {
@Test
@DisplayName("buildDriverFor should return a new instance of WindowsDriver for the provided url and the instance capabilities")
void buildDriverFor() {
- MockedConstruction windowsDriverMockedConstruction = mockConstruction(WindowsDriver.class, (mock, context) -> {
+ MockedConstruction windowsDriverMockedConstruction = mockConstruction((mock, context) -> {
assertEquals(url, context.arguments().getFirst());
assertEquals(windowsOptions, context.arguments().get(1));
});
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/XCUITestTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/XCUITestTest.java
index b5e6d91d..cce2fc81 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/drivers/XCUITestTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/drivers/XCUITestTest.java
@@ -58,7 +58,7 @@ void buildCapabilities() {
final String appPath = path.toString();
final String appAbsolutePath = path.toAbsolutePath().toString();
- MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(XCUITestOptions.class,
+ MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(
(mock, context) -> assertEquals(capabilities, context.arguments().getFirst()));
when(configuration.getDrivers()).thenReturn(drivers);
@@ -83,7 +83,7 @@ void buildCapabilities() {
void buildCapabilitiesAbsoluteAppPath() {
final String appPath = Path.of("absolute", "path").toAbsolutePath().toString();
- MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(XCUITestOptions.class,
+ MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(
(mock, context) -> assertEquals(capabilities, context.arguments().getFirst()));
when(configuration.getDrivers()).thenReturn(drivers);
@@ -103,7 +103,7 @@ void buildCapabilitiesAbsoluteAppPath() {
@Test
@DisplayName("buildDriverFor should return a new instance of IOSDriver for the provided url and the instance capabilities")
void buildDriverFor() {
- MockedConstruction iosDriverMockedConstruction = mockConstruction(IOSDriver.class, (mock, context) -> {
+ MockedConstruction iosDriverMockedConstruction = mockConstruction((mock, context) -> {
assertEquals(url, context.arguments().getFirst());
assertEquals(xcuiTestOptions, context.arguments().get(1));
});
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/element_locator_factories/AjaxLocatorFactoryTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/element_locator_factories/AjaxLocatorFactoryTest.java
new file mode 100644
index 00000000..7b5f8971
--- /dev/null
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/element_locator_factories/AjaxLocatorFactoryTest.java
@@ -0,0 +1,41 @@
+package io.github.giulong.spectrum.element_locator_factories;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.Mockito.mockConstruction;
+
+import java.time.Duration;
+
+import io.github.giulong.spectrum.utils.Reflections;
+
+import org.junit.jupiter.api.DisplayName;
+import org.junit.jupiter.api.Test;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.MockedConstruction;
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.support.pagefactory.AjaxElementLocatorFactory;
+import org.openqa.selenium.support.pagefactory.ElementLocatorFactory;
+
+class AjaxLocatorFactoryTest {
+
+ @Mock
+ private WebDriver driver;
+
+ @InjectMocks
+ private AjaxLocatorFactory locatorFactory;
+
+ @Test
+ @DisplayName("buildFor should return a new instance of AjaxElementLocatorFactory")
+ void testBuildFor() {
+ final Duration timeout = Duration.ofSeconds(10);
+ Reflections.setField("timeout", locatorFactory, timeout);
+
+ try (MockedConstruction construction = mockConstruction()) {
+ final ElementLocatorFactory actual = locatorFactory.buildFor(driver);
+ final ElementLocatorFactory expected = construction.constructed().getFirst();
+
+ assertEquals(expected, actual);
+ assertEquals(timeout, locatorFactory.getTimeout());
+ }
+ }
+}
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/element_locator_factories/DefaultLocatorFactoryTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/element_locator_factories/DefaultLocatorFactoryTest.java
new file mode 100644
index 00000000..adf85ba3
--- /dev/null
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/element_locator_factories/DefaultLocatorFactoryTest.java
@@ -0,0 +1,33 @@
+package io.github.giulong.spectrum.element_locator_factories;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.mockito.Mockito.mockConstruction;
+
+import org.junit.jupiter.api.DisplayName;
+import org.junit.jupiter.api.Test;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.MockedConstruction;
+import org.openqa.selenium.WebDriver;
+import org.openqa.selenium.support.pagefactory.DefaultElementLocatorFactory;
+import org.openqa.selenium.support.pagefactory.ElementLocatorFactory;
+
+class DefaultLocatorFactoryTest {
+
+ @Mock
+ private WebDriver driver;
+
+ @InjectMocks
+ private DefaultLocatorFactory locatorFactory;
+
+ @Test
+ @DisplayName("buildFor should return a new instance of DefaultElementLocatorFactory")
+ void testBuildFor() {
+ try (MockedConstruction construction = mockConstruction()) {
+ final ElementLocatorFactory actual = locatorFactory.buildFor(driver);
+ final ElementLocatorFactory expected = construction.constructed().getFirst();
+
+ assertEquals(expected, actual);
+ }
+ }
+}
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/ActionsResolverTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/ActionsResolverTest.java
index ecc839b5..aff20ebb 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/ActionsResolverTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/ActionsResolverTest.java
@@ -38,7 +38,7 @@ void testResolveParameter() {
when(extensionContext.getStore(GLOBAL)).thenReturn(store);
when(store.get(DRIVER, WebDriver.class)).thenReturn(webDriver);
- MockedConstruction mockedConstruction = mockConstruction(Actions.class);
+ MockedConstruction mockedConstruction = mockConstruction();
Actions actual = actionsResolver.resolveParameter(parameterContext, extensionContext);
Actions actions = mockedConstruction.constructed().getFirst();
verify(store).put(ActionsResolver.ACTIONS, actions);
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/DownloadWaitResolverTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/DownloadWaitResolverTest.java
index 7aba2385..bc4fbce0 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/DownloadWaitResolverTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/DownloadWaitResolverTest.java
@@ -66,7 +66,7 @@ void testResolveParameter() {
when(driversConfiguration.getWaits()).thenReturn(waits);
when(waits.getDownloadTimeout()).thenReturn(duration);
- MockedConstruction mockedConstruction = mockConstruction(DownloadWait.class, (mock, context) -> {
+ MockedConstruction mockedConstruction = mockConstruction((mock, context) -> {
assertEquals(webDriver, context.arguments().getFirst());
assertEquals(duration, context.arguments().get(1));
});
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/DriverResolverTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/DriverResolverTest.java
index 5789ca2f..7bbaceeb 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/DriverResolverTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/DriverResolverTest.java
@@ -296,7 +296,7 @@ void resolveParameter() {
when(autoWait.isEnabled()).thenReturn(false);
//noinspection rawtypes
- final MockedConstruction mockedConstruction = mockConstruction(EventFiringDecorator.class, (mock, executionContext) -> {
+ final MockedConstruction mockedConstruction = mockConstruction((mock, executionContext) -> {
assertArrayEquals(List.of(eventsWebDriverListener).toArray(), (WebDriverListener[]) executionContext.arguments().getFirst());
when(mock.decorate(webDriver)).thenReturn(decoratedWebDriver);
@@ -321,13 +321,13 @@ void resolveParameterAutoWait() {
when(autoWaitWebDriverListenerBuilder.locatorPattern(pattern)).thenReturn(autoWaitWebDriverListenerBuilder);
when(autoWaitWebDriverListenerBuilder.build()).thenReturn(autoWaitWebDriverListener);
- final MockedConstruction actionsMockedConstruction = mockConstruction(Actions.class, (mock, executionContext) -> {
+ final MockedConstruction actionsMockedConstruction = mockConstruction((mock, executionContext) -> {
assertEquals(webDriver, executionContext.arguments().getFirst());
when(autoWaitWebDriverListenerBuilder.actions(mock)).thenReturn(autoWaitWebDriverListenerBuilder);
});
- final MockedConstruction webDriverWaitMockedConstruction = mockConstruction(WebDriverWait.class, (mock, executionContext) -> {
+ final MockedConstruction webDriverWaitMockedConstruction = mockConstruction((mock, executionContext) -> {
assertEquals(webDriver, executionContext.arguments().getFirst());
assertEquals(autoWaitTimeout, executionContext.arguments().get(1));
@@ -335,7 +335,7 @@ void resolveParameterAutoWait() {
});
//noinspection rawtypes
- final MockedConstruction mockedConstruction = mockConstruction(EventFiringDecorator.class, (mock, executionContext) -> {
+ final MockedConstruction mockedConstruction = mockConstruction((mock, executionContext) -> {
assertArrayEquals(List.of(autoWaitWebDriverListener, eventsWebDriverListener).toArray(), (WebDriverListener[]) executionContext.arguments().getFirst());
when(mock.decorate(webDriver)).thenReturn(decoratedWebDriver);
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/FakerResolverTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/FakerResolverTest.java
index bda96148..354c36b0 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/FakerResolverTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/FakerResolverTest.java
@@ -62,7 +62,7 @@ void testResolveParameter() {
when(faker.getLocale()).thenReturn(locale);
when(faker.getRandom()).thenReturn(random);
- final MockedConstruction mockedConstruction = mockConstruction(Faker.class, (mock, context) -> {
+ final MockedConstruction mockedConstruction = mockConstruction((mock, context) -> {
assertEquals(locale, context.arguments().getFirst());
assertEquals(random, context.arguments().get(1));
});
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/ImplicitWaitResolverTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/ImplicitWaitResolverTest.java
index 1bf2dc52..d44b4493 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/ImplicitWaitResolverTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/ImplicitWaitResolverTest.java
@@ -67,7 +67,7 @@ void testResolveParameter() {
when(drivers.getWaits()).thenReturn(waits);
when(waits.getImplicit()).thenReturn(duration);
- MockedConstruction mockedConstruction = mockConstruction(ImplicitWait.class, (mock, context) -> {
+ MockedConstruction mockedConstruction = mockConstruction((mock, context) -> {
assertEquals(webDriver, context.arguments().getFirst());
assertEquals(duration, context.arguments().get(1));
});
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/PageLoadWaitResolverTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/PageLoadWaitResolverTest.java
index 0e0d0092..267e1312 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/PageLoadWaitResolverTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/PageLoadWaitResolverTest.java
@@ -66,7 +66,7 @@ void testResolveParameter() {
when(drivers.getWaits()).thenReturn(waits);
when(waits.getPageLoadTimeout()).thenReturn(duration);
- MockedConstruction mockedConstruction = mockConstruction(PageLoadWait.class, (mock, context) -> {
+ MockedConstruction mockedConstruction = mockConstruction((mock, context) -> {
assertEquals(webDriver, context.arguments().getFirst());
assertEquals(duration, context.arguments().get(1));
});
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/ScriptWaitResolverTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/ScriptWaitResolverTest.java
index 1215fee0..8d19f295 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/ScriptWaitResolverTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/ScriptWaitResolverTest.java
@@ -66,7 +66,7 @@ void testResolveParameter() {
when(drivers.getWaits()).thenReturn(waits);
when(waits.getScriptTimeout()).thenReturn(duration);
- MockedConstruction mockedConstruction = mockConstruction(ScriptWait.class, (mock, context) -> {
+ MockedConstruction mockedConstruction = mockConstruction((mock, context) -> {
assertEquals(webDriver, context.arguments().getFirst());
assertEquals(duration, context.arguments().get(1));
});
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/BrowsingContextInspectorResolverTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/BrowsingContextInspectorResolverTest.java
index e2c1ea7d..0b2a7a0e 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/BrowsingContextInspectorResolverTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/BrowsingContextInspectorResolverTest.java
@@ -22,7 +22,7 @@ class BrowsingContextInspectorResolverTest {
@Test
@DisplayName("resolveParameterFor should return an instance of BrowsingContextInspector for the provided WebDriver")
void resolveParameterFor() {
- final MockedConstruction mockedConstruction = mockConstruction(BrowsingContextInspector.class,
+ final MockedConstruction mockedConstruction = mockConstruction(
(mock, context) -> assertEquals(webDriver, context.arguments().getFirst()));
final BrowsingContextInspector actual = browsingContextInspectorResolver.resolveParameterFor(webDriver);
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/BrowsingContextResolverTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/BrowsingContextResolverTest.java
index b3a3e3ce..fc981b0b 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/BrowsingContextResolverTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/BrowsingContextResolverTest.java
@@ -26,7 +26,7 @@ void resolveParameterFor() {
final String windowHandle = "windowHandle";
when(webDriver.getWindowHandle()).thenReturn(windowHandle);
- final MockedConstruction mockedConstruction = mockConstruction(BrowsingContext.class, (mock, context) -> {
+ final MockedConstruction mockedConstruction = mockConstruction((mock, context) -> {
assertEquals(webDriver, context.arguments().getFirst());
assertEquals(windowHandle, context.arguments().get(1));
});
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/LogInspectorResolverTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/LogInspectorResolverTest.java
index 6aba7a8c..f911ab03 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/LogInspectorResolverTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/LogInspectorResolverTest.java
@@ -22,7 +22,7 @@ class LogInspectorResolverTest {
@Test
@DisplayName("resolveParameterFor should return an instance of LogInspector for the provided WebDriver")
void resolveParameterFor() {
- final MockedConstruction mockedConstruction = mockConstruction(LogInspector.class,
+ final MockedConstruction mockedConstruction = mockConstruction(
(mock, context) -> assertEquals(webDriver, context.arguments().getFirst()));
final LogInspector actual = logInspectorResolver.resolveParameterFor(webDriver);
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/NetworkResolverTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/NetworkResolverTest.java
index 81b9db8f..9262ba49 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/NetworkResolverTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/extensions/resolvers/bidi/NetworkResolverTest.java
@@ -22,7 +22,7 @@ class NetworkResolverTest {
@Test
@DisplayName("resolveParameterFor should return an instance of Network for the provided WebDriver")
void resolveParameterFor() {
- final MockedConstruction mockedConstruction = mockConstruction(Network.class,
+ final MockedConstruction mockedConstruction = mockConstruction(
(mock, context) -> assertEquals(webDriver, context.arguments().getFirst()));
final Network actual = networkResolver.resolveParameterFor(webDriver);
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/internals/AppiumLogTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/internals/AppiumLogTest.java
index 46bcd322..d1f9e4af 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/internals/AppiumLogTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/internals/AppiumLogTest.java
@@ -31,7 +31,7 @@ class AppiumLogTest {
@BeforeEach
void beforeEach() {
- stringBufferMockedConstruction = mockConstruction(StringBuffer.class);
+ stringBufferMockedConstruction = mockConstruction();
Reflections.setField("stringBuffer", appiumLog, new StringBuffer(LOG_MESSAGE));
}
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/internals/DriverLogTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/internals/DriverLogTest.java
index f02b8f19..92058584 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/internals/DriverLogTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/internals/DriverLogTest.java
@@ -31,7 +31,7 @@ class DriverLogTest {
@BeforeEach
void beforeEach() {
- stringBufferMockedConstruction = mockConstruction(StringBuffer.class);
+ stringBufferMockedConstruction = mockConstruction();
Reflections.setField("stringBuffer", driverLog, new StringBuffer(LOG_MESSAGE));
}
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/internals/jackson/deserializers/RandomDeserializerTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/internals/jackson/deserializers/RandomDeserializerTest.java
index be7703d4..5955ed44 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/internals/jackson/deserializers/RandomDeserializerTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/internals/jackson/deserializers/RandomDeserializerTest.java
@@ -41,7 +41,7 @@ void deserialize() throws IOException {
long value = 42L;
when(jsonParser.getValueAsLong()).thenReturn(value);
- final MockedConstruction mockedConstruction = mockConstruction(Random.class, (mock, context) -> assertEquals(value, context.arguments().getFirst()));
+ final MockedConstruction mockedConstruction = mockConstruction((mock, context) -> assertEquals(value, context.arguments().getFirst()));
final Random actual = randomDeserializer.deserialize(jsonParser, deserializationContext);
final Random expected = mockedConstruction.constructed().getFirst();
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/internals/page_factory/SpectrumFieldDecoratorTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/internals/page_factory/SpectrumFieldDecoratorTest.java
index f58c514d..a3af0514 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/internals/page_factory/SpectrumFieldDecoratorTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/internals/page_factory/SpectrumFieldDecoratorTest.java
@@ -56,6 +56,9 @@ class SpectrumFieldDecoratorTest {
void decorateNull() {
final ClassLoader classLoader = mock();
+ when(factory.createLocator(field)).thenReturn(locator);
+ doReturn(String.class).when(field).getType();
+
assertNull(spectrumFieldDecorator.decorate(classLoader, field));
}
@@ -78,7 +81,7 @@ void decorate() {
doReturn(WebElement.class).when(field).getType();
when(field.isAnnotationPresent(Secured.class)).thenReturn(true);
- final MockedConstruction mockedConstruction = mockConstruction(SpectrumLocatingElementHandler.class, (mock, context) -> {
+ final MockedConstruction mockedConstruction = mockConstruction((mock, context) -> {
assertEquals(locator, context.arguments().getFirst());
assertTrue((boolean) context.arguments().get(1));
});
@@ -105,7 +108,7 @@ void decorateList() {
when(parameterizedType.getActualTypeArguments()).thenReturn(new Type[]{WebElement.class});
when(field.getAnnotation(FindBy.class)).thenReturn(findBy);
- final MockedConstruction mockedConstruction = mockConstruction(LocatingElementListHandler.class,
+ final MockedConstruction mockedConstruction = mockConstruction(
(mock, context) -> assertEquals(locator, context.arguments().getFirst()));
final MockedStatic proxyMockedStatic = mockStatic();
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/internals/web_driver_listeners/EventsWebDriverListenerTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/internals/web_driver_listeners/EventsWebDriverListenerTest.java
index 2610b039..68aa3d9d 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/internals/web_driver_listeners/EventsWebDriverListenerTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/internals/web_driver_listeners/EventsWebDriverListenerTest.java
@@ -527,13 +527,13 @@ void afterSendKeysSecured() {
@Test
@DisplayName("afterGetScreenshotAs should dispatch an event when the screenshot is in bytes")
void afterGetScreenshotAsBytes() {
- final String message = "message";
+ final String simpleMessage = "simpleMessage";
final Status status = Status.INFO;
final byte[] result = new byte[]{1, 2, 3};
final Payload payload = Payload
.builder()
.screenshot(result)
- .message(message)
+ .message(simpleMessage)
.status(status)
.takesScreenshot((TakesScreenshot) driver)
.build();
@@ -542,7 +542,7 @@ void afterGetScreenshotAsBytes() {
when(context.getStore(GLOBAL)).thenReturn(store);
when(store.get(TEST_DATA, TestData.class)).thenReturn(testData);
when(testData.getScreenshot()).thenReturn(screenshot);
- when(screenshot.getMessage()).thenReturn(message);
+ when(screenshot.getMessage()).thenReturn(simpleMessage);
when(screenshot.getStatus()).thenReturn(status);
when(screenshot.getFrame()).thenReturn(MANUAL);
@@ -550,14 +550,14 @@ void afterGetScreenshotAsBytes() {
when(webDriverEventBuilder.frame(AUTO_AFTER)).thenReturn(webDriverEventBuilder);
when(webDriverEventBuilder.level(INFO)).thenReturn(webDriverEventBuilder);
when(webDriverEventBuilder.args(List.of(driver, BYTES, result))).thenReturn(webDriverEventBuilder);
- when(webDriverEventBuilder.message(message)).thenReturn(webDriverEventBuilder);
+ when(webDriverEventBuilder.message(simpleMessage)).thenReturn(webDriverEventBuilder);
when(webDriverEventBuilder.build()).thenReturn(webDriverEvent);
when(events.getAfterGetScreenshotAs()).thenReturn(event);
// listenTo
((Logger) LoggerFactory.getLogger(EventsWebDriverListener.class)).setLevel(Level.INFO);
- when(event.getMessage()).thenReturn(message);
+ when(event.getMessage()).thenReturn(simpleMessage);
when(event.getLevel()).thenReturn(INFO);
when(event.getWait()).thenReturn(wait);
@@ -569,13 +569,13 @@ void afterGetScreenshotAsBytes() {
@Test
@DisplayName("afterGetScreenshotAs should dispatch an event when the screenshot is in bytes, building a default screenshot if none is found in testData")
void afterGetScreenshotAsBytesNoScreenshot() {
- final String message = "";
+ final String emptyMessage = "";
final Status status = Status.INFO;
final byte[] result = new byte[]{1, 2, 3};
final Payload payload = Payload
.builder()
.screenshot(result)
- .message(message)
+ .message(emptyMessage)
.status(status)
.takesScreenshot((TakesScreenshot) driver)
.build();
@@ -589,14 +589,14 @@ void afterGetScreenshotAsBytesNoScreenshot() {
when(webDriverEventBuilder.frame(AUTO_AFTER)).thenReturn(webDriverEventBuilder);
when(webDriverEventBuilder.level(INFO)).thenReturn(webDriverEventBuilder);
when(webDriverEventBuilder.args(List.of(driver, BYTES, result))).thenReturn(webDriverEventBuilder);
- when(webDriverEventBuilder.message(message)).thenReturn(webDriverEventBuilder);
+ when(webDriverEventBuilder.message(emptyMessage)).thenReturn(webDriverEventBuilder);
when(webDriverEventBuilder.build()).thenReturn(webDriverEvent);
when(events.getAfterGetScreenshotAs()).thenReturn(event);
// listenTo
((Logger) LoggerFactory.getLogger(EventsWebDriverListener.class)).setLevel(Level.INFO);
- when(event.getMessage()).thenReturn(message);
+ when(event.getMessage()).thenReturn(emptyMessage);
when(event.getLevel()).thenReturn(INFO);
when(event.getWait()).thenReturn(wait);
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/utils/ContextManagerTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/utils/ContextManagerTest.java
index d30fa2e1..d816bbb1 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/utils/ContextManagerTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/utils/ContextManagerTest.java
@@ -56,7 +56,7 @@ void initFor() {
void initForContext() {
final String uniqueId = "uniqueId";
final Map testContexts = new HashMap<>();
- final MockedConstruction testContextMockedConstruction = mockConstruction(TestContext.class);
+ final MockedConstruction testContextMockedConstruction = mockConstruction();
Reflections.setField("testContexts", contextManager, testContexts);
when(context.getUniqueId()).thenReturn(uniqueId);
@@ -123,7 +123,7 @@ void get() {
void getNew() {
final String uniqueId = "uniqueId";
final Map testContexts = new HashMap<>();
- final MockedConstruction testContextMockedConstruction = mockConstruction(TestContext.class);
+ final MockedConstruction testContextMockedConstruction = mockConstruction();
when(context.getUniqueId()).thenReturn(uniqueId);
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/utils/ExtentReporterTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/utils/ExtentReporterTest.java
index a0465a7a..b3c81533 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/utils/ExtentReporterTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/utils/ExtentReporterTest.java
@@ -280,9 +280,9 @@ void sessionOpened() {
doReturn(extentSparkReporterConfigBuilder).when(extentSparkReporterConfigBuilder).js(internalJs + js);
doReturn(extentSparkReporterConfig).when(extentSparkReporterConfigBuilder).build();
- MockedConstruction extentReportsMockedConstruction = mockConstruction(ExtentReports.class);
+ MockedConstruction extentReportsMockedConstruction = mockConstruction();
- MockedConstruction extentSparkReporterMockedConstruction = mockConstruction(ExtentSparkReporter.class, (mock, executionContext) -> {
+ MockedConstruction extentSparkReporterMockedConstruction = mockConstruction((mock, executionContext) -> {
assertEquals(absolutePathToStringReplaced, executionContext.arguments().getFirst());
when(mock.config(extentSparkReporterConfig)).thenReturn(mock);
});
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/utils/FreeMarkerWrapperTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/utils/FreeMarkerWrapperTest.java
index f207ef8d..fd04340f 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/utils/FreeMarkerWrapperTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/utils/FreeMarkerWrapperTest.java
@@ -60,14 +60,9 @@ void sessionOpened() {
when(freeMarker.getLocale()).thenReturn(US);
when(freeMarker.getNumberFormat()).thenReturn(numberFormat);
- MockedConstruction versionMockedConstruction = mockConstruction(Version.class, context -> {
- assertEquals(version, context.arguments().getFirst());
- return withSettings();
- });
- MockedConstruction configurationMockedConstruction = mockConstruction(freemarker.template.Configuration.class, context -> {
- assertEquals(versionMockedConstruction.constructed().getFirst(), context.arguments().getFirst());
- return withSettings();
- });
+ MockedConstruction versionMockedConstruction = mockConstruction((mock, context) -> assertEquals(version, context.arguments().getFirst()));
+ MockedConstruction configurationMockedConstruction = mockConstruction(
+ (mock, context) -> assertEquals(versionMockedConstruction.constructed().getFirst(), context.arguments().getFirst()));
freeMarkerWrapper.sessionOpened();
assertEquals(Reflections.getFieldValue("configuration", freeMarkerWrapper), configurationMockedConstruction.constructed().getFirst());
@@ -82,17 +77,13 @@ void interpolate() throws TemplateException, IOException {
final String source = "source";
final Map vars = Map.of("one", "value");
- MockedConstruction stringReaderMockedConstruction = mockConstruction(StringReader.class, context -> {
- assertEquals(source, context.arguments().getFirst());
- return withSettings();
- });
- MockedConstruction templateMockedConstruction = mockConstruction(Template.class, context -> {
+ MockedConstruction stringReaderMockedConstruction = mockConstruction((mock, context) -> assertEquals(source, context.arguments().getFirst()));
+ MockedConstruction templateMockedConstruction = mockConstruction((mock, context) -> {
assertEquals("freemarker", context.arguments().getFirst());
assertEquals(stringReaderMockedConstruction.constructed().getFirst(), context.arguments().get(1));
assertEquals(configuration, context.arguments().get(2));
- return withSettings();
});
- MockedConstruction stringWriterMockedConstruction = mockConstruction(StringWriter.class, context -> withSettings());
+ MockedConstruction stringWriterMockedConstruction = mockConstruction();
final String actual = freeMarkerWrapper.interpolate(source, vars);
@@ -113,17 +104,13 @@ void interpolateTemplate() throws TemplateException, IOException {
final String source = "source";
final Map vars = Map.of("one", "value");
- MockedConstruction stringReaderMockedConstruction = mockConstruction(StringReader.class, context -> {
- assertEquals(source, context.arguments().getFirst());
- return withSettings();
- });
- MockedConstruction templateMockedConstruction = mockConstruction(Template.class, context -> {
+ MockedConstruction stringReaderMockedConstruction = mockConstruction((mock, context) -> assertEquals(source, context.arguments().getFirst()));
+ MockedConstruction templateMockedConstruction = mockConstruction((mock, context) -> {
assertEquals("freemarker", context.arguments().getFirst());
assertEquals(stringReaderMockedConstruction.constructed().getFirst(), context.arguments().get(1));
assertEquals(configuration, context.arguments().get(2));
- return withSettings();
});
- MockedConstruction stringWriterMockedConstruction = mockConstruction(StringWriter.class, context -> withSettings());
+ MockedConstruction stringWriterMockedConstruction = mockConstruction();
when(fileUtils.readTemplate(templateName)).thenReturn(source);
final String actual = freeMarkerWrapper.interpolateTemplate(templateName, vars);
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/utils/MetadataManagerTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/utils/MetadataManagerTest.java
index f13337ee..08fc1f17 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/utils/MetadataManagerTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/utils/MetadataManagerTest.java
@@ -212,7 +212,7 @@ void getSuccessfulQueueOfNew() {
final Map> localReports = new HashMap<>(Map.of());
//noinspection rawtypes
- MockedConstruction fixedSizeQueueMockedConstruction = mockConstruction(FixedSizeQueue.class);
+ MockedConstruction fixedSizeQueueMockedConstruction = mockConstruction();
when(metadata.getExecution()).thenReturn(execution);
when(execution.getSuccessful()).thenReturn(successful);
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/utils/TestDataTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/utils/TestDataTest.java
index 7b426677..703bb984 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/utils/TestDataTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/utils/TestDataTest.java
@@ -74,7 +74,7 @@ void incrementFrameNumber() {
@Test
@DisplayName("registerFailedVisualRegression should set the testFailedException with the updated regressions count")
void registerFailedVisualRegression() {
- try (MockedConstruction mockedConstruction = mockConstruction(VisualRegressionException.class)) {
+ try (MockedConstruction mockedConstruction = mockConstruction()) {
assertNull(testData.getTestFailedException());
testData.registerFailedVisualRegression(); // first regression
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/utils/environments/AppiumEnvironmentTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/utils/environments/AppiumEnvironmentTest.java
index 1b88456e..8a9f86ea 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/utils/environments/AppiumEnvironmentTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/utils/environments/AppiumEnvironmentTest.java
@@ -105,8 +105,8 @@ void sessionOpenedLogs() {
final int port = 123;
// isRunningOn
- MockedConstruction serverSocketMockedConstruction = mockConstruction(ServerSocket.class);
- MockedConstruction inetSocketAddressMockedConstruction = mockConstruction(InetSocketAddress.class, (mock, context) -> {
+ MockedConstruction serverSocketMockedConstruction = mockConstruction();
+ MockedConstruction inetSocketAddressMockedConstruction = mockConstruction((mock, context) -> {
assertEquals(InetAddress.getByName(ipAddress), context.arguments().getFirst());
assertEquals(port, context.arguments().get(1));
});
@@ -132,9 +132,8 @@ void sessionOpenedLogs() {
when(appiumLogBuilder.level(INFO)).thenReturn(appiumLogBuilder);
when(appiumLogBuilder.build()).thenReturn(appiumLog);
- MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(DesiredCapabilities.class, (mock, context) -> {
- assertEquals(capabilities, context.arguments().getFirst());
- });
+ MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(
+ (mock, context) -> assertEquals(capabilities, context.arguments().getFirst()));
appiumEnvironment.sessionOpened();
@@ -157,8 +156,8 @@ void sessionOpened() {
final int port = 123;
// isRunningOn
- MockedConstruction serverSocketMockedConstruction = mockConstruction(ServerSocket.class);
- MockedConstruction inetSocketAddressMockedConstruction = mockConstruction(InetSocketAddress.class, (mock, context) -> {
+ MockedConstruction serverSocketMockedConstruction = mockConstruction();
+ MockedConstruction inetSocketAddressMockedConstruction = mockConstruction((mock, context) -> {
assertEquals(InetAddress.getByName(ipAddress), context.arguments().getFirst());
assertEquals(port, context.arguments().get(1));
});
@@ -177,9 +176,8 @@ void sessionOpened() {
when(builder.withCapabilities(desiredCapabilitiesArgumentCaptor.capture())).thenReturn(builder);
when(AppiumDriverLocalService.buildService(builder)).thenReturn(driverService);
- MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(DesiredCapabilities.class, (mock, context) -> {
- assertEquals(capabilities, context.arguments().getFirst());
- });
+ MockedConstruction desiredCapabilitiesMockedConstruction = mockConstruction(
+ (mock, context) -> assertEquals(capabilities, context.arguments().getFirst()));
appiumEnvironment.sessionOpened();
@@ -295,8 +293,8 @@ void isRunningAt(final String ipAddress) {
@ValueSource(strings = {"localhost", "127.0.0.1", "0.0.0.0"})
void isRunningAtFalse(final String ipAddress) throws IOException {
final int port = 123;
- MockedConstruction serverSocketMockedConstruction = mockConstruction(ServerSocket.class);
- MockedConstruction inetSocketAddressMockedConstruction = mockConstruction(InetSocketAddress.class, (mock, context) -> {
+ MockedConstruction serverSocketMockedConstruction = mockConstruction();
+ MockedConstruction inetSocketAddressMockedConstruction = mockConstruction((mock, context) -> {
assertEquals(InetAddress.getByName("localhost"), context.arguments().getFirst());
assertEquals(port, context.arguments().get(1));
});
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/utils/events/MailConsumerTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/utils/events/MailConsumerTest.java
index d531fa7d..f84173aa 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/utils/events/MailConsumerTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/utils/events/MailConsumerTest.java
@@ -78,7 +78,7 @@ void accept() {
final String file1 = "file1";
final String file2 = "file2";
- MockedConstruction fileDataSourceMockedConstruction = mockConstruction(FileDataSource.class, (mock, context) -> {
+ MockedConstruction fileDataSourceMockedConstruction = mockConstruction((mock, context) -> {
if (context.getCount() == 1) {
assertEquals(file1, context.arguments().getFirst());
}
@@ -87,7 +87,7 @@ void accept() {
}
});
- MockedConstruction attachmentResourceMockedConstruction = mockConstruction(AttachmentResource.class, (mock, context) -> {
+ MockedConstruction attachmentResourceMockedConstruction = mockConstruction((mock, context) -> {
if (context.getCount() == 1) {
assertEquals(name1, context.arguments().getFirst());
assertEquals(fileDataSourceMockedConstruction.constructed().getFirst(), context.arguments().get(1));
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/utils/events/html_report/VisualRegressionConsumerTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/utils/events/html_report/VisualRegressionConsumerTest.java
index e48276de..a5ed136f 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/utils/events/html_report/VisualRegressionConsumerTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/utils/events/html_report/VisualRegressionConsumerTest.java
@@ -281,7 +281,7 @@ void runChecksOnFailed() {
Reflections.setField("htmlUtils", consumer, htmlUtils);
- try (MockedConstruction mockedConstruction = mockConstruction(VisualRegressionException.class, (mock, extensionContext) -> assertEquals(String
+ try (MockedConstruction mockedConstruction = mockConstruction((mock, extensionContext) -> assertEquals(String
.format("Unable to get a stable screenshot. Tried %d checks for %s times", count, 1), extensionContext.arguments().getFirst()))) {
when(fileUtils.compare(eq(screenshot), byteArrayArgumentCaptor.capture()))
.thenReturn(true)
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/utils/events/video/VideoConsumerTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/utils/events/video/VideoConsumerTest.java
index 9a59a363..ac1c60c2 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/utils/events/video/VideoConsumerTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/utils/events/video/VideoConsumerTest.java
@@ -155,14 +155,14 @@ void accept() throws IOException {
when(video.getWidth()).thenReturn(width);
when(video.getHeight()).thenReturn(height);
- final MockedConstruction byteArrayInputStreamMockedConstruction = mockConstruction(ByteArrayInputStream.class, (mock, executionContext) -> {
+ final MockedConstruction byteArrayInputStreamMockedConstruction = mockConstruction((mock, executionContext) -> {
assertEquals(screenshotBytes, executionContext.arguments().getFirst());
imageIOMockedStatic.when(() -> ImageIO.read(mock)).thenReturn(bufferedImage);
});
// resize
- final MockedConstruction bufferedImageMockedConstruction = mockConstruction(BufferedImage.class, (mock, executionContext) -> {
+ final MockedConstruction bufferedImageMockedConstruction = mockConstruction((mock, executionContext) -> {
assertEquals(width + 1, executionContext.arguments().getFirst());
assertEquals(height + 1, executionContext.arguments().get(1));
assertEquals(TYPE_INT_RGB, executionContext.arguments().get(2));
@@ -223,14 +223,14 @@ void acceptDuplicateFrameNewFrame() throws IOException {
when(video.getWidth()).thenReturn(width);
when(video.getHeight()).thenReturn(height);
- final MockedConstruction byteArrayInputStreamMockedConstruction = mockConstruction(ByteArrayInputStream.class, (mock, executionContext) -> {
+ final MockedConstruction byteArrayInputStreamMockedConstruction = mockConstruction((mock, executionContext) -> {
assertEquals(screenshotBytes, executionContext.arguments().getFirst());
imageIOMockedStatic.when(() -> ImageIO.read(mock)).thenReturn(bufferedImage);
});
// resize
- final MockedConstruction bufferedImageMockedConstruction = mockConstruction(BufferedImage.class, (mock, executionContext) -> {
+ final MockedConstruction bufferedImageMockedConstruction = mockConstruction((mock, executionContext) -> {
assertEquals(width + 1, executionContext.arguments().getFirst());
assertEquals(height + 1, executionContext.arguments().get(1));
assertEquals(TYPE_INT_RGB, executionContext.arguments().get(2));
@@ -352,7 +352,7 @@ void resize() {
final int width = 6;
final int height = 100;
- MockedConstruction bufferedImageMockedConstruction = mockConstruction(BufferedImage.class, (mock, executionContext) -> {
+ MockedConstruction bufferedImageMockedConstruction = mockConstruction((mock, executionContext) -> {
assertEquals(EVEN_WIDTH, executionContext.arguments().getFirst());
assertEquals(EVEN_HEIGHT, executionContext.arguments().get(1));
assertEquals(TYPE_INT_RGB, executionContext.arguments().get(2));
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/utils/file_providers/ClientFileProviderTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/utils/file_providers/ClientFileProviderTest.java
index 1847f815..9c25da87 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/utils/file_providers/ClientFileProviderTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/utils/file_providers/ClientFileProviderTest.java
@@ -37,7 +37,7 @@ void getViews() {
@Test
@DisplayName("getInjectableValues should return the client injectables")
void getInjectableValues() {
- final MockedConstruction mockedConstruction = mockConstruction(InjectableValues.Std.class,
+ final MockedConstruction mockedConstruction = mockConstruction(
(mock, context) -> when(mock.addValue("enabledFromClient", true)).thenReturn(mock));
final InjectableValues actual = fileProvider.getInjectableValues();
diff --git a/spectrum/src/test/java/io/github/giulong/spectrum/utils/file_providers/InternalFileProviderTest.java b/spectrum/src/test/java/io/github/giulong/spectrum/utils/file_providers/InternalFileProviderTest.java
index 8c22d0b1..635e58c9 100644
--- a/spectrum/src/test/java/io/github/giulong/spectrum/utils/file_providers/InternalFileProviderTest.java
+++ b/spectrum/src/test/java/io/github/giulong/spectrum/utils/file_providers/InternalFileProviderTest.java
@@ -1,17 +1,13 @@
package io.github.giulong.spectrum.utils.file_providers;
import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.mockito.Mockito.mockConstruction;
-import static org.mockito.Mockito.when;
-
-import com.fasterxml.jackson.databind.InjectableValues;
+import static org.junit.jupiter.api.Assertions.assertNull;
import io.github.giulong.spectrum.internals.jackson.views.Views;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks;
-import org.mockito.MockedConstruction;
class InternalFileProviderTest {
@@ -25,16 +21,9 @@ void getViews() {
}
@Test
- @DisplayName("getInjectableValues should return the internal injectables")
+ @DisplayName("getInjectableValues should return null")
void getInjectableValues() {
- final MockedConstruction mockedConstruction = mockConstruction(InjectableValues.Std.class,
- (mock, context) -> when(mock.addValue("enabledFromClient", false)).thenReturn(mock));
-
- final InjectableValues actual = fileProvider.getInjectableValues();
-
- assertEquals(mockedConstruction.constructed().getFirst(), actual);
-
- mockedConstruction.close();
+ assertNull(fileProvider.getInjectableValues());
}
@Test