The various version tables for the PHP Support article on Dev Center are generated by a utility program with fairly complex logic that should be covered by tests to avoid regressions and make it easier to confidently update it in the future, so here are some tests for it.
Fixtures are heavily filtered repositories that still have realistic data, keeps the size reasonable. README.md in fixture dir explains jq program used to do this, for future updates.
The generate.php program now accepts overrides for current date, stacks, and PHP version series, to ensure that the test remains stable over time (the generated HTML would otherwise change once a future version goes into security/EOL mode, or when a stack is added/removed, or when the PHP version series change).
Some minor cleanup that improves the generated Markdown (HTML, really) table elements' indentation, too; excerpt:
The various version tables for the PHP Support article on Dev Center are generated by a utility program with fairly complex logic that should be covered by tests to avoid regressions and make it easier to confidently update it in the future, so here are some tests for it.
Fixtures are heavily filtered repositories that still have realistic data, keeps the size reasonable.
README.md
in fixture dir explainsjq
program used to do this, for future updates.The
generate.php
program now accepts overrides for current date, stacks, and PHP version series, to ensure that the test remains stable over time (the generated HTML would otherwise change once a future version goes into security/EOL mode, or when a stack is added/removed, or when the PHP version series change).Some minor cleanup that improves the generated Markdown (HTML, really) table elements' indentation, too; excerpt:
GUS-W-15149734