···115115opam exec -- dune runtest
116116```
117117118118-### CI Integration
119119-120120-The CI pipeline automatically:
121121-- Runs all unit tests
122122-- Clones the YAML test suite
123123-- Executes the full test suite
124124-- Generates HTML reports
125125-126126-All tests must pass before merging changes.
127127-128118## API Documentation
129119130120Build the documentation with:
+6-2
tests/run_all_tests.ml
···484484 ) results
485485 end;
486486487487- match !html_output with
487487+ (match !html_output with
488488 | Some file ->
489489 generate_html results file;
490490 Printf.printf "\nHTML report generated: %s\n" file
491491- | None -> ()
491491+ | None -> ());
492492+493493+ (* Exit with non-zero code if any tests failed *)
494494+ if fail_count > 0 || json_fail_count > 0 then
495495+ exit 1
+6-2
tests/run_all_tests_eio.ml
···527527 let total_time = Unix.gettimeofday () in
528528 Printf.printf "\nTotal time: %.3fs\n%!" (total_time -. start_time);
529529530530- match !html_output with
530530+ (match !html_output with
531531 | Some file ->
532532 generate_html ~fs results file;
533533 Printf.printf "HTML report generated: %s\n" file
534534- | None -> ()
534534+ | None -> ());
535535+536536+ (* Exit with non-zero code if any tests failed *)
537537+ if fail_count > 0 || json_fail_count > 0 then
538538+ exit 1