/** * Override to implement custom factory method for tested product. * * @param testedProductClass tested product class * @return tested product instance */ protected TestedProduct<?> createProduct(Class<? extends TestedProduct<?>> testedProductClass) { return TestedProductFactory.create(testedProductClass); }
Product(String name, String defaultInstanceId, String defaultContextPath, int defaultHttpPort, String serverInfoUrl, boolean hasLicense, Class<? extends TestedProduct> testedProductClass) { this.defaultContextPath = defaultContextPath; this.defaultHttpPort = defaultHttpPort; this.defaultInstanceId = defaultInstanceId; this.hasLicense = hasLicense; this.name = name; this.serverInfoUrl = serverInfoUrl; this.testedProduct = TestedProductFactory.create(testedProductClass); }
@Override public T get() { return create(productClass); } };
@Override public void evaluate() throws Throwable { product = TestedProductFactory.create(testedProductClass); base.evaluate(); } };
/** * Creates a tested product, allowing the instance to choose its own default {@link Tester} and instance id * * @param testedProductClass The tested product class name * @return The created tested product */ @SuppressWarnings("unchecked") public static TestedProduct<?> create(String testedProductClass) { Class<TestedProduct<?>> clazz; try { clazz = (Class<TestedProduct<?>>) TestedProductFactory.class.getClassLoader().loadClass(testedProductClass); } catch (ClassNotFoundException e) { throw new IllegalArgumentException("Cannot find tested product class: " + testedProductClass); } return create(clazz); }
@Override protected TestedProduct<?> createProduct() { prepareProductInstanceConfiguration(); return TestedProductFactory.create(ConfluenceBrowserlessTestedProduct.class); }
/** * Creates a tested product, allowing the instance to choose its own default {@link Tester} and instance id * * @param testedProductClass The tested product class * @param <P> The tested product type * @return The created tested product */ public static <P extends TestedProduct<?>> P create(Class<P> testedProductClass) { return create(testedProductClass, getDefaultInstanceId(testedProductClass), null); }
@Override protected TestedProduct<?> createProduct() { prepareProductInstanceConfiguration(); return TestedProductFactory.create(ConfluenceTestedProduct.class); }
@Override protected TestedProduct<?> createProduct(Class<? extends TestedProduct<?>> testedProductClass) { final int port = startServer(); return TestedProductFactory.create(testedProductClass, createProductInstance(port), null); }
public final FixedConfluenceTestedProduct getConfluenceProduct() { FixedConfluenceTestedProduct product; product = TestedProductFactory.create(FixedConfluenceTestedProduct.class); product.getPageBinder().override(GeneralPage.class, ConfluenceGeneralPage.class); return product; } }
return create(testedProductClass, instance, testerFactory);
public JiraTestedProduct getJiraProduct() { JiraTestedProduct product = TestedProductFactory.create(JiraTestedProduct.class); product.backdoor().darkFeatures().enableForSite("jira.onboarding.feature.disabled"); product.getPageBinder().override(AdminHomePage.class, JiraAdminSummaryPage.class); product.getPageBinder().override(GeneralPage.class, JiraGeneralPage.class); product.getPageBinder().override(HomePage.class, DashboardPage.class); return product; } }