Public Access
43 lines
1.9 KiB
Markdown
43 lines
1.9 KiB
Markdown
# GameTest suites
|
|
|
|
The default dedicated-server run is a small smoke suite: 16 Rivencraft tests
|
|
cover core linking, deterministic Age definition, writing persistence, legacy
|
|
data migration, workstation transactions, and forged/replayed menu actions.
|
|
NeoForge currently adds two of its own tests, so the runner reports 18.
|
|
|
|
```shell
|
|
./gradlew runGameTestServer
|
|
```
|
|
|
|
The remaining 46 Rivencraft tests are archived, not deleted. They cover
|
|
completed milestone details such as every Age terrain profile, Notebook and
|
|
Desk surface interactions, refill edge cases, book assembly controls, and
|
|
workstation break/drop behavior. Run only the relevant archive alongside the
|
|
core tests when investigating an issue:
|
|
|
|
```shell
|
|
./gradlew runGameTestServer -ParchivedGameTestSuites=desk
|
|
./gradlew runGameTestServer -ParchivedGameTestSuites=linking,binder
|
|
```
|
|
|
|
Available suite names are `linking`, `writing`, `desk`, `binder`, `mixer`, and
|
|
`recipe`. Run all 62 Rivencraft tests (64 including NeoForge's two) before a
|
|
release or after broad cross-system changes:
|
|
|
|
```shell
|
|
./gradlew runGameTestServer -PwithArchivedGameTests=true
|
|
```
|
|
|
|
Each archive is selected by its `rivencraft_archive_<suite>` GameTest namespace.
|
|
The suites share the normal empty test structure and do not need Create, Ponder, or
|
|
Immersive Portals. The core suite delegates to the original regression methods
|
|
for its selected cases, so the two suites do not maintain duplicate test logic.
|
|
|
|
GameTest Ages are created in `build/gametest-run/world`, not in a development
|
|
client save. The Gradle task removes that **dedicated** world automatically if
|
|
it exceeds 512 MiB; override the threshold with `-PgameTestMaxWorldMiB=128`,
|
|
for example. Cleanup never targets a custom `-PgameTestRunDir` or a player
|
|
world. A fresh test world can also help diagnose a slow or stalled worldgen
|
|
run. The full suite should still be run before shipping changes in the
|
|
archived systems.
|