Skip to content

Commit dd56d50

Browse files
committed
TestBuildInfoPluginFuncTest
1 parent 444da3d commit dd56d50

File tree

2 files changed

+17
-10
lines changed

2 files changed

+17
-10
lines changed

build-tools/src/integTest/groovy/org/elasticsearch/gradle/test/TestBuildInfoPluginFuncTest.groovy

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.elasticsearch.gradle.test
22

3+
34
import org.elasticsearch.gradle.fixtures.AbstractGradleFuncTest
45
import org.gradle.testkit.runner.TaskOutcome
56

@@ -20,23 +21,26 @@ class TestBuildInfoPluginFuncTest extends AbstractGradleFuncTest{
2021
"""
2122

2223
buildFile << """
24+
import org.elasticsearch.gradle.plugin.GenerateTestBuildInfoTask;
25+
2326
plugins {
24-
id 'elasticsearch.test-build-info'
2527
id 'java'
28+
id 'elasticsearch.test-build-info'
2629
}
2730
2831
repositories {
2932
mavenCentral()
3033
}
3134
32-
dependencies {
35+
tasks.withType(GenerateTestBuildInfoTask.class) {
36+
componentName = 'example-component'
3337
}
3438
"""
3539

3640
when:
3741
def result = gradleRunner('generateTestBuildInfo').build()
3842

3943
then:
40-
result.task(":test").outcome == TaskOutcome.SUCCESS
44+
result.task(":generateTestBuildInfo").outcome == TaskOutcome.SUCCESS
4145
}
4246
}

build-tools/src/main/java/org/elasticsearch/gradle/test/TestBuildInfoPlugin.java

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
import org.elasticsearch.gradle.plugin.GenerateTestBuildInfoTask;
1414
import org.gradle.api.Plugin;
1515
import org.gradle.api.Project;
16+
import org.gradle.api.artifacts.Configuration;
17+
import org.gradle.api.file.FileCollection;
1618
import org.gradle.api.file.RegularFile;
1719
import org.gradle.api.provider.Provider;
1820
import org.gradle.api.provider.ProviderFactory;
@@ -39,14 +41,15 @@ public TestBuildInfoPlugin(ProviderFactory providerFactory) {
3941
@Override
4042
public void apply(Project project) {
4143
var testBuildInfoTask = project.getTasks().register("generateTestBuildInfo", GenerateTestBuildInfoTask.class, task -> {
44+
FileCollection codeLocations = project.getConfigurations().getByName("runtimeClasspath");
45+
Configuration compileOnly = project.getConfigurations()
46+
.findByName(CompileOnlyResolvePlugin.RESOLVEABLE_COMPILE_ONLY_CONFIGURATION_NAME);
47+
if (compileOnly != null) {
48+
codeLocations = codeLocations.minus(compileOnly);
49+
}
4250
var sourceSets = project.getExtensions().getByType(SourceSetContainer.class);
43-
task.getCodeLocations()
44-
.set(
45-
project.getConfigurations()
46-
.getByName("runtimeClasspath")
47-
.minus(project.getConfigurations().getByName(CompileOnlyResolvePlugin.RESOLVEABLE_COMPILE_ONLY_CONFIGURATION_NAME))
48-
.plus(sourceSets.getByName(SourceSet.MAIN_SOURCE_SET_NAME).getOutput().getClassesDirs())
49-
);
51+
codeLocations = codeLocations.plus(sourceSets.getByName(SourceSet.MAIN_SOURCE_SET_NAME).getOutput().getClassesDirs());
52+
task.getCodeLocations().set(codeLocations);
5053
Provider<RegularFile> directory = project.getLayout().getBuildDirectory().file("generated-build.info/test-build-info.json");
5154
task.getOutputFile().set(directory);
5255
});

0 commit comments

Comments
 (0)