@Override public TestOptions getTestOptions() { String testTaskName = VariantType.UNIT_TEST_PREFIX + StringUtils.capitalize(getName()) + VariantType.UNIT_TEST_SUFFIX; List<Test> testTasks = ImmutableList.copyOf(getProject().getTasks().withType(Test.class)); Optional<Test> optionalTest = testTasks.stream().filter(test -> test.getName().equals(testTaskName)).findFirst(); List<String> jvmArgs = optionalTest.map(Test::getAllJvmArgs).orElseGet(Collections::<String>emptyList); Map<String, Object> env = optionalTest.map(Test::getEnvironment).orElseGet(Collections::emptyMap); System.getenv().keySet().forEach(env::remove); return new TestOptions(jvmArgs, env); }
@Override public void execute( final Test test ) { final JGivenReportTask reportTask = project.getTasks() .create( "jgiven" + WordUtil.capitalize( test.getName() ) + "Report", JGivenReportTask.class ); configureDefaultReportTask( test, reportTask, reportingExtension ); } } );
private void runPluginTestsInEclipse(final Test testTask, final TestResultProcessor testResultProcessor, final int pluginTestPort) { ExecutorService threadPool = Executors.newFixedThreadPool(2); File runDir = new File(testTask.getProject().getBuildDir(), testTask.getName());
private void applyTo( Test test ) { final String testName = test.getName(); final JGivenTaskExtension extension = test.getExtensions().create( "jgiven", JGivenTaskExtension.class ); final Project project = test.getProject(); ( (IConventionAware) extension ).getConventionMapping().map( "resultsDir", new Callable<File>() { @Override public File call() { return project.file( String.valueOf( project.getBuildDir() ) + "/jgiven-results/" + testName ); } } ); File resultsDir = extension.getResultsDir(); if( resultsDir != null ) { test.getOutputs().dir(resultsDir).withPropertyName("jgiven.resultsDir"); } test.prependParallelSafeAction( new Action<Task>() { @Override public void execute( Task task ) { Test test = (Test) task; test.systemProperty( Config.JGIVEN_REPORT_DIR, extension.getResultsDir().getAbsolutePath() ); } } ); }