Skip to content

Commit 0e0d139

Browse files
authored
Enable IP tests for java-platform (#32803)
2 parents e1de17e + 601a7bd commit 0e0d139

File tree

3 files changed

+30
-24
lines changed

3 files changed

+30
-24
lines changed

platforms/jvm/java-platform/build.gradle.kts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,3 @@ dependencies {
5858
packageCycles {
5959
excludePatterns.add("org/gradle/api/internal/java/**")
6060
}
61-
tasks.isolatedProjectsIntegTest {
62-
enabled = false
63-
}

platforms/jvm/java-platform/src/integTest/groovy/org/gradle/integtests/resolve/platforms/JavaPlatformResolveIntegrationTest.groovy

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ package org.gradle.integtests.resolve.platforms
1919

2020
import org.gradle.api.attributes.Category
2121
import org.gradle.integtests.fixtures.AbstractHttpDependencyResolutionTest
22+
import org.gradle.integtests.fixtures.ToBeFixedForIsolatedProjects
2223
import org.gradle.integtests.fixtures.resolve.ResolveTestFixture
2324
import org.hamcrest.Matchers
2425

@@ -27,20 +28,22 @@ class JavaPlatformResolveIntegrationTest extends AbstractHttpDependencyResolutio
2728
ResolveTestFixture resolve
2829

2930
def setup() {
30-
settingsFile << "rootProject.name = 'test'"
31-
buildFile << """
32-
apply plugin: 'java-library'
33-
34-
allprojects {
31+
settingsFile << """
32+
rootProject.name = 'test'
33+
gradle.lifecycle.beforeProject {
3534
repositories {
3635
maven { url = "${mavenHttpRepo.uri}" }
3736
}
3837
group = 'org.test'
3938
version = '1.9'
4039
}
4140
"""
41+
buildFile << """
42+
apply plugin: 'java-library'
43+
"""
4244
}
4345

46+
@ToBeFixedForIsolatedProjects(because = "ResolveTestFixture#prepare isn't IP compatible")
4447
def "can get recommendations from a platform subproject"() {
4548
def module = mavenHttpRepo.module("org", "foo", "1.1").publish()
4649

@@ -80,6 +83,7 @@ class JavaPlatformResolveIntegrationTest extends AbstractHttpDependencyResolutio
8083
}
8184
}
8285

86+
@ToBeFixedForIsolatedProjects(because = "ResolveTestFixture#prepare isn't IP compatible")
8387
def "can get different recommendations from a platform runtime subproject"() {
8488
def module1 = mavenHttpRepo.module("org", "foo", "1.1").publish()
8589
def module2 = mavenHttpRepo.module("org", "bar", "1.2").publish()
@@ -130,6 +134,7 @@ class JavaPlatformResolveIntegrationTest extends AbstractHttpDependencyResolutio
130134
}
131135
}
132136

137+
@ToBeFixedForIsolatedProjects(because = "ResolveTestFixture#prepare isn't IP compatible")
133138
def "fails when using a regular project dependency instead of a platform dependency"() {
134139
def module = mavenHttpRepo.module("org", "foo", "1.1").publish()
135140

@@ -159,6 +164,7 @@ class JavaPlatformResolveIntegrationTest extends AbstractHttpDependencyResolutio
159164
failure.assertThatCause(Matchers.startsWith("No matching variant of project :platform was found."))
160165
}
161166

167+
@ToBeFixedForIsolatedProjects(because = "ResolveTestFixture#prepare isn't IP compatible")
162168
def "can enforce a local platform dependency"() {
163169
def module1 = mavenHttpRepo.module("org", "foo", "1.1").publish()
164170
def module2 = mavenHttpRepo.module("org", "foo", "1.2").publish()
@@ -201,7 +207,7 @@ class JavaPlatformResolveIntegrationTest extends AbstractHttpDependencyResolutio
201207
}
202208
}
203209

204-
def "Can handle a published platform dependency that is resolved to a local platform project"() {
210+
def "can handle a published platform dependency that is resolved to a local platform project"() {
205211
given:
206212
file("src/main/java/SomeClass.java") << "public class SomeClass {}"
207213
platformModule('')
@@ -234,6 +240,7 @@ class JavaPlatformResolveIntegrationTest extends AbstractHttpDependencyResolutio
234240
succeeds ":compileJava"
235241
}
236242

243+
@ToBeFixedForIsolatedProjects(because = "ResolveTestFixture#prepare isn't IP compatible")
237244
def 'constraint from platform does not erase excludes (platform: #platform)'() {
238245
given:
239246
platformModule("""

platforms/jvm/java-platform/src/integTest/groovy/org/gradle/integtests/resolve/platforms/NativeAlignmentWithJavaPlatformResolveIntegrationTest.groovy

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,16 @@ package org.gradle.integtests.resolve.platforms
1919
import org.gradle.api.JavaVersion
2020
import org.gradle.integtests.fixtures.GradleMetadataResolveRunner
2121
import org.gradle.integtests.fixtures.RequiredFeature
22+
import org.gradle.integtests.fixtures.ToBeFixedForIsolatedProjects
2223
import org.gradle.integtests.fixtures.resolve.ResolveTestFixture
2324
import org.gradle.integtests.resolve.AbstractModuleDependencyResolveTest
2425

2526
import static org.gradle.util.internal.TextUtil.escapeString
2627

27-
@RequiredFeature(feature = GradleMetadataResolveRunner.GRADLE_METADATA, value="true")
28-
@RequiredFeature(feature = GradleMetadataResolveRunner.REPOSITORY_TYPE, value="maven")
28+
@RequiredFeature(feature = GradleMetadataResolveRunner.GRADLE_METADATA, value = "true")
29+
@RequiredFeature(feature = GradleMetadataResolveRunner.REPOSITORY_TYPE, value = "maven")
2930
class NativeAlignmentWithJavaPlatformResolveIntegrationTest extends AbstractModuleDependencyResolveTest {
31+
@ToBeFixedForIsolatedProjects(because = "subprojects, rootProject access")
3032
def "publishes a platform with native alignment"() {
3133
settingsFile << """
3234
rootProject.name = 'root'
@@ -198,17 +200,17 @@ class NativeAlignmentWithJavaPlatformResolveIntegrationTest extends AbstractModu
198200
byConstraint("platform alignment")
199201
byConflictResolution("between versions 1.1 and 1.0")
200202
variant "apiElements", [
201-
'org.gradle.category':'library',
202-
'org.gradle.dependency.bundling':'external',
203+
'org.gradle.category': 'library',
204+
'org.gradle.dependency.bundling': 'external',
203205
'org.gradle.jvm.version': JavaVersion.current().majorVersion,
204-
'org.gradle.status':'release',
206+
'org.gradle.status': 'release',
205207
'org.gradle.usage': 'java-api',
206208
'org.gradle.libraryelements': 'jar',
207209
]
208210
module('com.acme.foo:platform:1.1') {
209211
variant "apiElements", [
210-
'org.gradle.category':'platform',
211-
'org.gradle.status':'release',
212+
'org.gradle.category': 'platform',
213+
'org.gradle.status': 'release',
212214
'org.gradle.usage': 'java-api']
213215
constraint('com.acme.foo:core:1.1')
214216
constraint('com.acme.foo:lib:1.1')
@@ -217,10 +219,10 @@ class NativeAlignmentWithJavaPlatformResolveIntegrationTest extends AbstractModu
217219
}
218220
module('com.acme.foo:lib:1.1') {
219221
variant "apiElements", [
220-
'org.gradle.category':'library',
221-
'org.gradle.dependency.bundling':'external',
222+
'org.gradle.category': 'library',
223+
'org.gradle.dependency.bundling': 'external',
222224
'org.gradle.jvm.version': JavaVersion.current().majorVersion,
223-
'org.gradle.status':'release',
225+
'org.gradle.status': 'release',
224226
'org.gradle.usage': 'java-api',
225227
'org.gradle.libraryelements': 'jar',
226228
]
@@ -230,17 +232,17 @@ class NativeAlignmentWithJavaPlatformResolveIntegrationTest extends AbstractModu
230232
}
231233
module('com.acme.foo:lib:1.1') {
232234
variant "apiElements", [
233-
'org.gradle.category':'library',
234-
'org.gradle.dependency.bundling':'external',
235+
'org.gradle.category': 'library',
236+
'org.gradle.dependency.bundling': 'external',
235237
'org.gradle.jvm.version': JavaVersion.current().majorVersion,
236-
'org.gradle.status':'release',
238+
'org.gradle.status': 'release',
237239
'org.gradle.usage': 'java-api',
238240
'org.gradle.libraryelements': 'jar',
239241
]
240242
module('com.acme.foo:platform:1.1') {
241243
variant "apiElements", [
242-
'org.gradle.category':'platform',
243-
'org.gradle.status':'release',
244+
'org.gradle.category': 'platform',
245+
'org.gradle.status': 'release',
244246
'org.gradle.usage': 'java-api']
245247
}
246248
}

0 commit comments

Comments
 (0)