This PR aims to introduce testing for newer PostGIS versions.
One of the problems to solve was consistent, future-proof(-ish), testing across 5 different versions of PostGIS, as a test expectation might be valid for 3.0, 3.1 & 3.2, but changes in 3.3 and/or 3.4 due to the way PHPUnit handles --group and --exclude-group, e.g. if a test is in 3.1 & 3.2, but you --exclude-group on 3.1, then the 3.2 group membership is ignored.
To work around this I added a small function to the generator that automatically add group membership to a catch-all versioned group, and for the highest-value group, any higher supported group values.
Tests (e.g. PostgreSQL 13 & PostGIS 3.2) now can be run like so :
This PR aims to introduce testing for newer PostGIS versions.
One of the problems to solve was consistent, future-proof(-ish), testing across 5 different versions of PostGIS, as a test expectation might be valid for 3.0, 3.1 & 3.2, but changes in 3.3 and/or 3.4 due to the way PHPUnit handles
--group
and--exclude-group
, e.g. if a test is in 3.1 & 3.2, but you--exclude-group
on 3.1, then the 3.2 group membership is ignored.To work around this I added a small function to the generator that automatically add group membership to a catch-all
versioned
group, and for the highest-value group, any higher supported group values.Tests (e.g. PostgreSQL 13 & PostGIS 3.2) now can be run like so :
I haven't touched the CI yet, as you'll probably have feedback with respect to PHP & Postgres versions used in the matrix.
Happy to work with you to get things to your liking.