J. King
576d7e16a8
Fix handling of bytea-typed nulls
2020-11-09 16:49:42 -05:00
J. King
2438f35f3d
Add icon cache to database
...
Feed updating has not yet been adapted to store
icon data (nor their URLs anymore)
2020-11-04 18:34:22 -05:00
J. King
5e60da00a9
Merge branch 'master' into miniflux
2020-11-03 18:58:09 -05:00
J. King
b5f959aabf
Fix blob tests
2020-11-03 18:57:26 -05:00
J. King
41bcffd6fb
Correctly query PostgreSQL byte arrays
...
This required different workarouynd for the native and PDO interfaces
2020-11-03 17:52:20 -05:00
J. King
c21ae3eca9
Correctly send binary data to PostgreSQL
...
This finally brings PostgreSQL to parity with SQLite and MySQL.
Two tests casting binary data to text were removed since behaviour here
should in fact be undefined
Accountinf for any encoding when retrieving data will be addressed by
a later commit
2020-11-02 15:21:04 -05:00
J. King
4db1b95cf4
Add numeric IDs and other Miniflux data to SQLite schema
2020-10-30 15:25:22 -04:00
J. King
3ac010d5b6
Fix tests in absence of database extensions
2020-10-30 12:16:03 -04:00
J. King
bc53a2d24a
Style fixes
2020-03-01 15:16:50 -05:00
J. King
b5f118e8cb
Cleanup
2020-01-20 13:52:48 -05:00
J. King
bbace7a0ac
Use void and nullable return types where practical
2020-01-20 13:34:03 -05:00
J. King
de424e42f6
Merge branch 'master' into phpunit-8
2019-11-14 11:51:38 -05:00
J. King
b6dd8ab20d
Improvements to and proper tests for query builder
2019-10-18 13:11:03 -04:00
J. King
17a2fa96f8
Upgrade to PHPUnit 8
2019-10-16 14:42:43 -04:00
J. King
b8b8a6aa70
Also adjust test for MySQL connection failure
2019-10-16 10:26:39 -04:00
J. King
cb1039326c
Fix PostgreSQL tests when using "trust" authentication
2019-10-11 13:04:15 -04:00
J. King
d0f780d4e6
Unit tests for IN() clause generator
2019-09-11 15:25:26 -04:00
J. King
29667464a1
Remove unnecessary namespace imports
2019-09-05 10:03:32 -04:00
J. King
bab4174a17
Move database driver helps out of test cases
2019-08-25 13:19:11 -04:00
J. King
b8b559b0f8
Correct spuriously failing tests
2019-08-05 16:33:48 -04:00
J. King
f7240301e4
Basic database maintenance
...
Closes #169
2019-07-26 09:37:51 -04:00
J. King
cb71a9efd7
Make database connections for testing configurable
2019-06-22 10:29:26 -04:00
J. King
21fdd66d37
Work around limit to SQL parameter placeholders for IN() clauses
...
Improves #150
LIKE-based matches also need to be similarly conservative
2019-03-01 22:36:25 -05:00
J. King
6857e8ec1b
Merge branch 'search'
2019-03-01 12:26:08 -05:00
J. King
837f3c6dd6
Simplify SQL type handling
...
This is done in anticipation of dealing with SQL types in
places other than statements
2019-03-01 12:17:33 -05:00
J. King
2df7c25b66
Add ability to search note text
2019-02-23 20:14:52 -05:00
J. King
8ea1df920a
Unify SQL timeouts
...
- Exec and lock timeouts now apply to MySQL
- Lock timeout now applies to PostgreSQL
- SQLite now uses a generic lock timeout setting which applies to all
2019-01-23 16:31:54 -05:00
J. King
4670dfc849
Handle connection errors
2019-01-15 10:51:55 -05:00
J. King
e92bda5373
Various changes:
...
- Fix handling of binary data and long strings
- Simplify handling of socket connections
- Fix coverage
2019-01-15 08:58:11 -05:00
J. King
f3b0c791f8
Fix remaining tests
2019-01-14 09:51:00 -05:00
J. King
5d61ab0a57
Fixes for MySQL native interface
...
Three test failures remain, but these are minor and will be resolved
soon. Handling of binary data is also broken, but given that this works
fine with the PDO driver, there is presumably some correct method.
2019-01-13 23:17:19 -05:00
J. King
e501fbdc87
Remove the DatabaseInformation class in tests and use traits instead
2019-01-12 12:43:06 -05:00
J. King
81acba90dc
Use strict equality when comparing strings
2019-01-11 10:38:06 -05:00
J. King
206cca35a9
Test tweaks
2018-12-21 17:51:49 -05:00
J. King
f0d30c2eee
Make munging of queries a generic feature
2018-12-21 12:35:10 -05:00
J. King
24df564045
Mostly successful MySQL database function tests
...
Two failures remain, at least one requiring query munging.
2018-12-21 10:14:26 -05:00
J. King
4ef36643a4
Proof-of-concept PDO MySQL driver
...
- Configuration options were added
- Non-transactional locking was added to the savepoint handlers
- Tests were adjusted for MySQL's reserved words
2018-12-20 18:06:28 -05:00
J. King
29e7c1f154
Fix coverage
2018-12-13 19:56:07 -05:00
J. King
2bebdd44cf
Implementation of native PostgreSQL interface
...
Changes to the Database class were required to avoid outputting booleans
2018-12-13 19:47:51 -05:00
J. King
b52dadf345
Make existing PostgreSQL tests explicitly PDO tests
2018-12-12 12:42:40 -05:00
J. King
28f803dd28
Handle PostgreSQL connection errors
2018-12-12 11:15:07 -05:00
J. King
73729a6be8
Simplify database cleanup between tests
2018-12-10 13:17:04 -05:00
J. King
8dbf237626
Group PostgreSQL tests as slow
2018-12-10 12:39:09 -05:00
J. King
913cf71620
Fix incorrect annotations
2018-12-07 20:36:20 -05:00
J. King
089f666de6
Fix PDO insert ID errors in PHP 7.1
2018-12-06 17:46:00 -05:00
J. King
cf896121b2
Style fixes
2018-12-05 17:28:11 -05:00
J. King
f2245861e3
Restore complete Database coverage
...
Also suppress PostgreSQL database function tests from normal coverage,
and add a "coverage:full" task to run them if needed.
2018-12-05 17:07:47 -05:00
J. King
258be1d54e
Fix most PostgreSQL test failures
...
Reasons for failures included an unhandled error code, erroneous sorting
assumptions, and a broken computation of the next insert ID in tests
Five failures remain.
2018-12-05 09:05:43 -05:00
J. King
8fc31cfc40
Rewrite various queries to work in PostgreSQL
...
This involved changes to the driver interface as well as the database
schemata. The most significantly altered queries were for article
selection and marking, which relied upon unusual features of SQLite.
Overall query efficiency should not be adversely affected (it may have
even imprved) in the common case, while very rare cases (not presently
triggered by any REST handlers) require more queries.
One notable benefit of these changes is that functions which query
articles can now have complete control over which columns are returned.
This has not, however, been implemented yet: symbolic column groups are
still used for now.
Note that PostgreSQL still fails many tests, but the test suite runs to
completion. Note also that one line of the Database class is not
covered; later changes will eventually make it easier to cover the line
in question.
2018-12-04 20:41:21 -05:00
J. King
527ecee393
Code coverage fixes
2018-11-29 13:56:15 -05:00