Tons of useful information can be found on the official site.
General step are defined in the spec:
Loading has the following explicit steps (please note that Events form a Stream, not a Tree)
Composer delivers also Stream of Nodes (because there may be more than one document in the YAML stream, but for simplification the diagram mentions only one Node graph)
Engine uses Comprehensive Test Suite for YAML for the tests.
When your contribution implements new topic from the spec or changes the core features, it should be checked with the latest spec tests.
- clone YAML Test Suite
- take tag (the trunk is work in progress)
git tag | grep data
git checkout <LATEST TAG>
- build with flat data (remove sub-folders)
make clean data && make data-update && mv data orig && mkdir data; find orig -name === | sed 's/===//; s/orig\///' | while read d; do (set -x; cp -r orig/$d data/${d/\/0/-0}); done; rm -fr orig
- copy data folder to
src/test/resources/comprehensive-test-suite-data
./mvnw clean verify
Run the tests and fix the errors:
./docker-run-jdk8.sh
./mvnw clean install site -Preformat