This directory (tests
) contains integration tests for the Spine Model Compiler for Java.
This is a separate Gradle project and depends on mc-java
via Gradle
composite build. Please see settings.gradle.kts
for details.
Tests in this module are run in a separate Gradle process and currently cannot be included in the repository code coverage because of Jacoco limitations.
These tests are executed as the integrationTest
task of
the main build script.
NOTE: The
check
task of the root project depends onintegrationTest
,
so the integration tests are performed automatically during the root build.
There is no need to do anything extra about it.
If you need to run only integration tests, while the root project directory is your current, please run the following command:
./gradlew integrationTest
If your current directory is tests
, just run the Gradle build as usualy:
./gradlew clean build
The test
directory contains soft symlinks to directories and files from the root project which
this Gradle project needs for execution:
Symlink | Target |
---|---|
buildSrc/ |
../buildSrc/ |
gradle/ |
../gradle/ |
.gitignore |
../.gitignore |
gradlew |
../gradlew |
gradlew.bat |
../gradlew.bat |
This arrangement ensures that integration tests use the same versions of dependencies as the production code in the root project.
Git handles symlinks according to the core.symlinks
option.
Under Unix-like systems symlink support for Git is likely to be turned on. It is more complicated under Windows.
Symlink creation under Windows requires either Administrator privileges or the Developer Mode on turned on. If you develop under Windows you may want to turn the Developer Mode on for your workstation.
The recommended configuration under Windows is:
Item | Configuration |
---|---|
OS | Windows 10 Creator Update or newer |
File System | NTFS |
Ability to handle symlinks for the Windows user |
Developer Mode enabled |
Git | Native Client version 2.10.2 or newer |
Git configuration | Config file path:C:\Program Files\Git\etc\gitconfig |
Git global config:[core] |
To configure IntelliJ IDEA for recognizing tests
module as the actual source code, please see
this page.