use of cucumber.runtime.io.MultiLoader in project activityinfo by bedatadriven.
the class ScenarioTestCase method createCucumberRuntime.
private Runtime createCucumberRuntime() {
List<Module> moduleList = new ArrayList<>();
moduleList.add(new ScenarioModule(new SequentialScenarioScope()));
moduleList.addAll(testConditions.getModules());
Injector injector = Guice.createInjector(moduleList);
ClassLoader classLoader = getClass().getClassLoader();
ResourceLoader resourceLoader = new MultiLoader(classLoader);
ClassFinder classFinder = new ResourceLoaderClassFinder(resourceLoader, classLoader);
JavaBackend backend = new JavaBackend(new GuiceObjectFactory(injector), classFinder);
return new Runtime(resourceLoader, classLoader, Collections.singleton(backend), options);
}
use of cucumber.runtime.io.MultiLoader in project activityinfo by bedatadriven.
the class TestMain method queueOdkTests.
private void queueOdkTests() {
ResourceLoader loader = new MultiLoader(getClass().getClassLoader());
RuntimeOptions options = new RuntimeOptions(Arrays.asList("--tags", "@odk", "classpath:org/activityinfo/test", "--glue", "org.activityinfo.test.steps.common", "--glue", "org.activityinfo.test.steps.odk"));
queueFeatures("odk", loader, options, new OdkModule());
}
use of cucumber.runtime.io.MultiLoader in project activityinfo by bedatadriven.
the class TestMain method queueApiTests.
private void queueApiTests() {
ResourceLoader loader = new MultiLoader(getClass().getClassLoader());
RuntimeOptions options = new RuntimeOptions(Arrays.asList("--tags", "@api", "classpath:org/activityinfo/test", "--glue", "org.activityinfo.test.steps.common", "--glue", "org.activityinfo.test.steps.json"));
queueFeatures("api", loader, options, new ApiModule());
}
use of cucumber.runtime.io.MultiLoader in project activityinfo by bedatadriven.
the class TestMain method queueTestMethods.
private void queueTestMethods(String environment, Module... driverModules) {
List<Module> modules = new ArrayList<>();
modules.add(new SystemUnderTest(url));
modules.add(new EmailModule());
modules.addAll(Arrays.asList(driverModules));
TestConditions conditions = new TestConditions(environment, modules);
Predicate<String> filter = filterPredicate();
ClassLoader classLoader = getClass().getClassLoader();
ClassFinder classFinder = new ResourceLoaderClassFinder(new MultiLoader(classLoader), classLoader);
Collection<Class<?>> testClasses = classFinder.getDescendants(Object.class, "org.activityinfo.test.ui");
for (Class<?> testClass : testClasses) {
for (Method method : JUnitUiTestCase.findTestMethods(testClass)) {
if (filter.apply(method.getName()) || filter.apply(method.getDeclaringClass().getName())) {
queueTestCase(new JUnitUiTestCase(method, conditions));
}
}
}
}
Aggregations