Add JUnit support
Add support for configuring JUnit run tasks.
- [x] Publish PR to GitHub Packages
Last commit published: 0363b2c51f628e061a5232e364164142101d05f2.
PR Publishing
The artifacts published by this PR:
- :package:
net.neoforged.gradle:dsl-vanilla:7.0.98-pr-107-junit - :package:
net.neoforged.gradle:utils:7.0.98-pr-107-junit - :package:
net.neoforged.gradle:dsl-mixin:7.0.98-pr-107-junit - :package:
net.neoforged.gradle:common:7.0.98-pr-107-junit - :package:
net.neoforged.gradle:junit:7.0.98-pr-107-junit - :package:
net.neoforged.gradle:dsl-platform:7.0.98-pr-107-junit - :package:
net.neoforged.gradle:dsl-userdev:7.0.98-pr-107-junit - :package:
net.neoforged.gradle:mixin:7.0.98-pr-107-junit - :package:
net.neoforged.gradle.mixin:net.neoforged.gradle.mixin.gradle.plugin:7.0.98-pr-107-junit - :package:
net.neoforged.gradle:dsl-neoform:7.0.98-pr-107-junit - :package:
net.neoforged.gradle.common:net.neoforged.gradle.common.gradle.plugin:7.0.98-pr-107-junit - :package:
net.neoforged.gradle:neoform:7.0.98-pr-107-junit - :package:
net.neoforged.gradle.neoform:net.neoforged.gradle.neoform.gradle.plugin:7.0.98-pr-107-junit - :package:
net.neoforged.gradle:dsl-common:7.0.98-pr-107-junit - :package:
net.neoforged.gradle.junit:net.neoforged.gradle.junit.gradle.plugin:7.0.98-pr-107-junit - :package:
net.neoforged.gradle.userdev:net.neoforged.gradle.userdev.gradle.plugin:7.0.98-pr-107-junit - :package:
net.neoforged.gradle:vanilla:7.0.98-pr-107-junit - :package:
net.neoforged.gradle:platform:7.0.98-pr-107-junit - :package:
net.neoforged.gradle.platform:net.neoforged.gradle.platform.gradle.plugin:7.0.98-pr-107-junit - :package:
net.neoforged.gradle:userdev:7.0.98-pr-107-junit - :package:
net.neoforged.gradle.vanilla:net.neoforged.gradle.vanilla.gradle.plugin:7.0.98-pr-107-junit
Repository Declaration
In order to use the artifacts published by the PR, add the following repository to your buildscript:
repositories {
maven {
name 'Maven for PR #107' // https://github.com/neoforged/NeoGradle/pull/107
url 'https://prmaven.neoforged.net/NeoGradle/pr107'
content {
includeModule('net.neoforged.gradle', 'dsl-vanilla')
includeModule('net.neoforged.gradle', 'utils')
includeModule('net.neoforged.gradle', 'dsl-mixin')
includeModule('net.neoforged.gradle', 'common')
includeModule('net.neoforged.gradle', 'junit')
includeModule('net.neoforged.gradle', 'dsl-platform')
includeModule('net.neoforged.gradle', 'dsl-userdev')
includeModule('net.neoforged.gradle', 'mixin')
includeModule('net.neoforged.gradle.mixin', 'net.neoforged.gradle.mixin.gradle.plugin')
includeModule('net.neoforged.gradle', 'dsl-neoform')
includeModule('net.neoforged.gradle.common', 'net.neoforged.gradle.common.gradle.plugin')
includeModule('net.neoforged.gradle', 'neoform')
includeModule('net.neoforged.gradle.neoform', 'net.neoforged.gradle.neoform.gradle.plugin')
includeModule('net.neoforged.gradle', 'dsl-common')
includeModule('net.neoforged.gradle.junit', 'net.neoforged.gradle.junit.gradle.plugin')
includeModule('net.neoforged.gradle.userdev', 'net.neoforged.gradle.userdev.gradle.plugin')
includeModule('net.neoforged.gradle', 'vanilla')
includeModule('net.neoforged.gradle', 'platform')
includeModule('net.neoforged.gradle.platform', 'net.neoforged.gradle.platform.gradle.plugin')
includeModule('net.neoforged.gradle', 'userdev')
includeModule('net.neoforged.gradle.vanilla', 'net.neoforged.gradle.vanilla.gradle.plugin')
}
}
}
How does this interact with running tests from IDEA directly (rather than through Gradle)? I'm assuming that it won't work, as FML/BootstrapLauncher expect environment variables and system properties to be present?
If you run tests with the Gradle runner it will work fine in IDEA, if you run with the IntelliJ runner it won't, that's correct, and that's not really fixable.
That's useful to know, thanks! Mostly just trying to compare with what I have now (I only need MC's Bootstrap for my existing tests, so can get away with doing less of a thorough job :)).
@marchermans The IntelliJ & Gradle unit test launchers are not runTypes, hence the comparison falls flat. We do not launch via a generated gradle task, nor do we launch via BootstrapLauncher here. I don't want to expose these internal shenanigans for users since it's more friction to get unit tests to work and not less.
Is superseded by #183