0.23 2009-12-18T23:03:39
-------------------------
* Fixed broken Perl detection in `Makefile`.
* Copied OS detection from Perl's `Configure` script to new script,
`getos.sh`. OS detection should now be much more accurate.
* Fixed `pg_prove` to exit with non-zero status if tests failed, as it works
better in automated testing environments and consistent with `prove` (fix by
Darrell Fuhriman).
* Updated documentation of supported environment variables in `bin/pg_prove`.
* Fixed a bug in the function tests where the return value of a function was
not always consistently formatted. For example, `function_returns()` would
find "bool" instead of "boolean".
* Added `isa_ok()`.
* Added support for building against 8.5 [Dan Colish].
* Fixed failing test on alpha releases [Jonathan Leto]
* Added `is_empty()` to test that a query returns an empty set (no results).
* Added `collect_tap()`, which makes it easier to run multiple tests in a
single `SELECT` statement in combination with `skip()`.
* Added `throws_like()`, `throws_ilike()`, `throws_matching()`, and
`throws_imatching()` to test that an SQL statement throws an error message
matching a `LIKE` pattern or a regular expression.
* Added `roles_are()`, `types_are()`, `domains_are()`, `enums_are()`,
`triggers_are()`, `casts_are()`, `operators_are()`, and `columns_are()`.
* Fixed the diagnostic output from `isnt()` and `col_isnt_pk()` when they
fail. They now more closely matches what Test::More's `isnt()` outputs and
makes much more sense.
* Added `domain_type_is()` and `domain_type_isnt()`. Based on an
implementation by Bob Lunney.
* Added variants of `col_is_type()` to allow a schema name to be specified for
the type.
* Added `display_type()` and replaced all internal use of `format_type()` with
it. This is so that schemas are always displayed properly.
* Added `row_eq()`. It's a 90% solution that requires that `record` values be
cast to existing composite values. But it should work well even at that.
* Changed the default descriptions output by `has_operator()`, `has_leftop()`,
and `has_rightop()` to format the operator names more like the display of
`regoperator` types.
* Fixed issue with using SET SESSION AUTHORIZATION among tests [Kevin Field]
* Added `display_oper()` so that schemas are always displayed properly when
comparing operators.
0.22 2009-07-31T00:26:16
-------------------------
* Fixed failing test on 8.4rc2.
* Added result set testing functions. These allow testers to write queries in
pure SQL and check that their results are as expected. The new functions
are:
+ `results_eq()`
+ `results_ne()`
+ `set_eq()`
+ `bag_eq()`
+ `set_ne()`
+ `bag_ne()`
+ `set_has()`
+ `bag_has()`
+ `set_hasnt()`
+ `bag_hasnt()`
* Changed some internal queries to use explicit `JOIN`s.
* Fixed capitalization of `TAP::Harness` in the `Makefile`. Thanks to
Quinn Weaver.
* Fixed a syntax error that caused `uninstall_pgtap.sql` to fail on older
PostgreSQL versions (fix by Quinn Weaver).
* Modified the summary documentation for the `--schema` and `--match` options
to `pg_prove` to better reflect that they are for finding xUnit tests,
not for finding pgTAP functions.