|
Mutiple connections code, including documentation and unit tests.
Utilizes key names to distinguish connections, but uses a default
connection if none specified. I don't (yet) use multiple connections in
my work (it's pending), so this has not been tested "in the wild".
Added unit tests with additional connections, ran unit tests for Paris
against this build too, so an unmodified Paris is forward-compatible
with this commit (mulitple connections support not yet coded for Paris).
Does *NOT* add support for queries across multiple connections. (I
don't even want to go there ...)
##### Edge-case compatibility breaks:
* ORM::_setup_identifier_quote_character visibility was changed to
protected (which was likely original intent, judging by prefixed name)
* May break compatibility if ORM has been extended, **and** subclasses
directly utilize `::_config`, `::_db`, `::_query_log`, or
`::_query_cache` instead of using pre-existing accessor methods. (Paris
does not do this; all Paris tests pass)
* Re-use of `Tester` class outside of Idiorm repo, as
`Tester::check_equal()` was renamed to `Tester::check_equal_query()`
##### Other notes
New method: `ORM::get_connection_keys()`.
New `Tester` method: `Tester::check_equal_string()`.
TODO: Consider adding methods to get (connection-specific)
configuration info.
|