aboutsummaryrefslogtreecommitdiff
path: root/src/test/groovy/net/fabricmc/loom
diff options
context:
space:
mode:
authormodmuss50 <modmuss50@gmail.com>2021-10-23 15:04:22 +0100
committerGitHub <noreply@github.com>2021-10-23 15:04:22 +0100
commita10307464eae0f6007b5a9ba544c20b1092753e5 (patch)
tree29f20c981196fa910dab52c91a2afa087717dc9a /src/test/groovy/net/fabricmc/loom
parent0248bacc16c771c310e46cba0bbc9815260a36d2 (diff)
downloadarchitectury-loom-a10307464eae0f6007b5a9ba544c20b1092753e5.tar.gz
architectury-loom-a10307464eae0f6007b5a9ba544c20b1092753e5.tar.bz2
architectury-loom-a10307464eae0f6007b5a9ba544c20b1092753e5.zip
Add AccessWidenerValidator (#518)
* Add AccessWidenerValidator * Move to task * Review feedback
Diffstat (limited to 'src/test/groovy/net/fabricmc/loom')
-rw-r--r--src/test/groovy/net/fabricmc/loom/test/integration/AccessWidenerTest.groovy20
-rw-r--r--src/test/groovy/net/fabricmc/loom/test/util/GradleProjectTestTrait.groovy2
2 files changed, 21 insertions, 1 deletions
diff --git a/src/test/groovy/net/fabricmc/loom/test/integration/AccessWidenerTest.groovy b/src/test/groovy/net/fabricmc/loom/test/integration/AccessWidenerTest.groovy
index 43c793cb..6ffe74fb 100644
--- a/src/test/groovy/net/fabricmc/loom/test/integration/AccessWidenerTest.groovy
+++ b/src/test/groovy/net/fabricmc/loom/test/integration/AccessWidenerTest.groovy
@@ -65,4 +65,24 @@ class AccessWidenerTest extends Specification implements GradleProjectTestTrait
where:
version << STANDARD_TEST_VERSIONS
}
+
+ @Unroll
+ def "invalid (#awLine)"() {
+ setup:
+ def gradle = gradleProject(project: "accesswidener", version: version)
+ new File(gradle.projectDir, "src/main/resources/modid.accesswidener").append(awLine)
+ def errorPrefix = "Failed to validate access-widener file modid.accesswidener on line 10: java.lang.RuntimeException: "
+
+ when:
+ def result = gradle.run(task: "check", expectFailure: true)
+
+ then:
+ result.output.contains(errorPrefix + error)
+
+ where:
+ awLine | error | version
+ 'accessible\tclass\tnet/minecraft/DoesntExists' | "Could not find class (net/minecraft/DoesntExists)" | DEFAULT_GRADLE
+ 'accessible\tfield\tnet/minecraft/screen/slot/Slot\tabc\tI' | "Could not find field (abcI) in class (net/minecraft/screen/slot/Slot)" | DEFAULT_GRADLE
+ 'accessible\tmethod\tnet/minecraft/client/main/Main\tmain\t([Ljava/lang/NotAString;)V' | "Could not find method (main([Ljava/lang/NotAString;)V) in class (net/minecraft/client/main/Main)" | DEFAULT_GRADLE
+ }
}
diff --git a/src/test/groovy/net/fabricmc/loom/test/util/GradleProjectTestTrait.groovy b/src/test/groovy/net/fabricmc/loom/test/util/GradleProjectTestTrait.groovy
index 91a19b91..1bb8b461 100644
--- a/src/test/groovy/net/fabricmc/loom/test/util/GradleProjectTestTrait.groovy
+++ b/src/test/groovy/net/fabricmc/loom/test/util/GradleProjectTestTrait.groovy
@@ -156,7 +156,7 @@ trait GradleProjectTestTrait {
runner.withArguments(args as String[])
- return runner.build()
+ return options.expectFailure ? runner.buildAndFail() : runner.build()
}
private GradleRunner getRunner() {