# Testing


> **Documentation baseline:** VoxelCore `main` at `452b569` · 14 September 2026.  
> **Repository:** [https://github.com/VoxelHorizons/VoxelCore](https://github.com/VoxelHorizons/VoxelCore)


VoxelCore combines focused unit/regression tests with real plugin-capable server smoke tests.

## Unit/regression coverage

Current tests cover, among other behaviour:

- item compilation and multi-level inheritance;
- missing parents, cycles, duplicate IDs and required-field validation;
- deep immutability of compiled definition data;
- YAML loading/discovery and strict schema handling;
- stable render allocation and tombstone behaviour;
- structured semantic-key typed indices and type-change rejection;
- runtime reload rollback and successful publication;
- `ItemManager` use of the active snapshot allocation;
- platform version parsing, including Paper's build-qualified 26.2 version;
- item metadata flag resolution;
- deterministic Java pack output and modern rule generation;
- 26.2 `min_format`/`max_format` pack metadata;
- config migration preserving operator values;
- unbound definitions being excluded from `item list`.

## Real-server matrix

Validated exact servers:

1. 1.12.2
2. 1.13.2
3. 1.14.4
4. 1.19.4
5. 1.20.5
6. 1.21.4
7. 26.2

The smoke path goes beyond “plugin enabled”: it waits for the `VOXELCORE_READY` marker, exercises content/admin behaviour, verifies create → stored ContentID → identify round trips, validates/builds the exact resource-pack target, deliberately triggers a failed reload and confirms the old revision remains active, then restores valid content and confirms a successful new revision.

## Fixture families

The repository currently carries `mvp-content`, `mvp-content-legacy` and `mvp-content-modern` fixtures so rendering boundaries can be exercised without pretending one authored render representation behaves identically on every client generation.
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9