public static void initialize(String requestedDriver) { setRequestedDriverIfPresent(requestedDriver); setupWebdriverManager(); initPagesObjectUsing(getDriver()); initStepFactoryUsing(getPages()); }
public static void initializeFieldsIn(final Object testCase) { initialize(); getDriver(); injectDriverInto(testCase); injectAnnotatedPagesObjectInto(testCase); }
public static String getCurrentDriverName() { if (!webdriversInitialized()) { return ""; } return getWebdriverManager().getCurrentDriverType(); }
private static void lazyInitalize() { if (!webdriversInitialized()) { initialize(); } }
protected static Pages getPages() { return ThucydidesWebDriverSupport.getPages(); }
private <T> T createNewPageEnabledStepCandidate(final Class<T> type) { T newInstance; try { ThucydidesWebDriverSupport.initialize(); Pages pageFactory = ThucydidesWebDriverSupport.getPages(); Class[] constructorArgs = new Class[1]; constructorArgs[0] = Pages.class; Constructor<T> constructor = type.getConstructor(constructorArgs); newInstance = constructor.newInstance(pageFactory); Serenity.initialize(newInstance); } catch (Exception e) { throw new CucumberException(String.format("%s doesn't have an empty or a page enabled constructor.", type), e); } return newInstance; }
public WebDriver getDriver() { return ThucydidesWebDriverSupport.getDriver(); }
public static void useDriver(WebDriver driver) { initialize(); getWebdriverManager().registerDriver(driver); }
public static WebDriver getDriver() { initialize(); if (webdriverManagerThreadLocal.get() == null) { return null; } WebDriver driver; if (defaultDriverType.get() != null) { driver = getWebdriverManager().withOptions(Optional.ofNullable(defaultDriverOptions.get()).orElse("")) .getWebdriver(defaultDriverType.get()); } else { driver = (getWebdriverManager().getCurrentDriver() != null) ? getWebdriverManager().getCurrentDriver() : getWebdriverManager().getWebdriver(); } initPagesObjectUsing(driver); return driver; }
/** * Initialize Serenity-related fields in the specified object. * This includes managed WebDriver instances, * @param testCase any object (testcase or other) containing injectable Serenity components */ public static void initialize(final Object testCase) { ThucydidesWebDriverSupport.initialize(); setupWebDriverFactory(); setupWebdriverManager(); ThucydidesWebDriverSupport.initializeFieldsIn(testCase); initStepListener(); injectDriverInto(testCase); injectAnnotatedPagesObjectInto(testCase); injectScenarioStepsInto(testCase); injectDependenciesInto(testCase); }
public static void initialize(WebdriverManager webdriverManager, String requestedDriver) { setupWebdriverManager(webdriverManager, requestedDriver); initPagesObjectUsing(getDriver()); }
public static void initialize() { initialize(null); }
/** * Instantiate the @Managed-annotated WebDriver instance with current WebDriver. */ protected static void injectDriverInto(final Object testCase) { TestCaseAnnotations.forTestCase(testCase).injectDrivers(getDriver(), getWebdriverManager()); }
public static WebdriverManager getWebdriverManager() { return ThucydidesWebDriverSupport.getWebdriverManager(); }
private static void initPagesObjectUsing(final WebDriver driver) { pagesThreadLocal.set(new Pages(driver)); initStepFactoryUsing(getPages()); }
public Object createInstanceOfType(Class<?> type) { Object stepsInstance = getContext().newInstanceOf(type); StepAnnotations.injectScenarioStepsInto(stepsInstance, getStepFactory()); ThucydidesWebDriverSupport.initializeFieldsIn(stepsInstance); injectDependencies(stepsInstance); return stepsInstance; }
public static Pages getPages() { if (pagesThreadLocal.get() == null) { initPagesObjectUsing(getDriver()); } return pagesThreadLocal.get(); }
public static WebdriverManager getWebdriverManager() { // lazyInitalize(); if (webdriverManagerIsNotInstantiated()) { initialize(); } return webdriverManagerThreadLocal.get(); }
public static void initializeFieldsIn(final Object testCase) { injectDriverInto(testCase); injectAnnotatedPagesObjectInto(testCase); }
private void setDriverUsingPagesDriverIfDefined(final Pages pages) { if (pages.getDriver() == null) { ThucydidesWebDriverSupport.initialize(); ThucydidesWebDriverSupport.useDriver(getDriver()); pages.setDriver(getDriver()); } }