Commit graph

418 commits

Author SHA1 Message Date
890f9b07d4 Replace Resquest objects with PSR-7 request messages; improves #53 2018-01-04 23:08:53 -05:00
9ad0b47201 Add Target class to manipulate request traget URL parts
The query part is not parsed for now because PSR-7 request objects/PHP take care of that parsing for us.
2018-01-04 14:06:45 -05:00
9eadd602bd Replace Response objects with PSR-7 response messages; improves #53
While the test suite passes, this commit yields a broken server: replacing ad hoc request objectss with PSR-7 ones is still required, as is emission of PSR-7 responses. Both will come in subsequent commits, with tests

Diactoros was chosen specifically because it includes facilities for emitting responses, something which is awkward to test. The end of this refactoring should see both the Response and Request classes disappear, and the general REST class fully covered (as well as any speculative additions to AbstractHanlder).
2018-01-03 23:13:08 -05:00
27caf147df Changes to Date helper class
- Changed 'transform' method to use ValueInfo throughout. This fixes a number of obscure bugs
- Changed the 'add' and 'sub' methods to default to "now" rather than null. This means null passes through rather than being interpreted as the current time, to be consistent with other date tools
- Also changed the 'add' and 'sub' methods so that they operate correctly with invalid date strings
- Added tests for the class; improves #66
- Modified TTRSS tests because the "iso8601" format string in ValueInfo is different from Date's older format
2018-01-02 16:53:38 -05:00
89bfc23d32 Standardize date normalization to immutables
Also move date formats to the ValueInfo class

Standardizing on immutables avoids any possible ambiguity in the API of the resultant value, as well as any ambiguity as to whether a DateTime output instance is the same instance or a clone (they had been clones)
2018-01-02 16:27:58 -05:00
87faededc6 Backport PDO changes to ValueInfo 2018-01-02 10:29:24 -05:00
8250cc63ce Clean up links in README.md 2018-01-01 12:39:07 -05:00
ddf55e0665 Change session lifetimes to more closely match TTRSS
At least some clients seem to expect the default timeout of one day.
2018-01-01 12:31:42 -05:00
59fee52074 Reorganize tests into namespaces 2017-12-21 22:47:19 -05:00
7598d5735f Fix error in Windows robo script 2017-12-20 09:27:15 -05:00
392376a1ef Subject Robo file to coding standards 2017-12-19 22:21:54 -05:00
0785f832de CS fixes 2017-12-19 22:19:42 -05:00
67ecaee1f6 Robo task for CS fixes 2017-12-19 22:19:34 -05:00
793af17c22 Pad out help for Robo tasks 2017-12-17 11:37:07 -05:00
73c8583744 Remove reliance on xdebug; fixes #113
Code coverage information is now gathered via phpdbg (a separate executable) by if available rather than xdebug, as the latter is hard to turn on and off.

A "test:quick" task has also been added to Robo, which excludes 31 tests which together account for almost two thirds of the test run time. This should pave the way for testing to be added as a commit hook for Git.
2017-12-17 10:27:34 -05:00
183718204d Grouped slow tests; improves #113 2017-12-16 20:03:04 -05:00
dd7d6e44b9 Further fixes for test timezone assumptions 2017-12-16 19:37:30 -05:00
3f65625090 Ensure tests do not rely in UTC default timezone
Six tests failed if the default timezone was not UTC. These were all due to faulty expectations, however, not faulty output.
2017-12-16 18:30:45 -05:00
092b793e0a Fix PHPUnit's composer lock file 2017-12-16 17:51:40 -05:00
415f7fd385 Fix feed timeout test; improves #113 2017-12-16 17:21:23 -05:00
6848f154c0 Update dev dependencies 2017-12-16 17:11:17 -05:00
ceef0bd1d4 Fix coverage task 2017-12-16 10:49:26 -05:00
b8ed7c6bf8 Added missing static keyword to Misc\ValueInfo::normalize() 2017-12-10 11:16:06 -06:00
3e42fbdddf Munge off-by-one dates in tests; fixes #112 2017-12-08 16:00:23 -05:00
5cdcd2a7d3 Exclude robo helper scripts from releases 2017-12-08 15:22:37 -05:00
ff9d437511 Update test-running examples 2017-12-08 15:19:14 -05:00
11f4eed118 Scripts for Robo 2017-12-08 15:15:20 -05:00
4bc3398157 Use Robo for programming task execution
The plan had originally been to use Bldr, but Bldr's features were not particularly compelling, and it has not been maintained recently. By contrast Robo has very useful features while still meeting my needs.

In addition to migrating the build process, the current Robo file also runs unit tests, with or without coverage reporting.

Fixes #116; improves #113
2017-12-08 14:37:49 -05:00
3a07156259 Fix broken test 2017-12-07 19:39:32 -05:00
f100cab558 Version bump 2017-12-07 18:24:35 -05:00
44ae0ba29b Collate synthetic subscription title column; fixes #127 2017-12-07 18:17:16 -05:00
0b3b3cb49c Use SQLite nocase collation; improves #127 2017-12-07 18:05:34 -05:00
c8f012c5fc Add Composer description 2017-12-07 17:33:45 -05:00
9f4095f00d Test server tweak 2017-12-07 17:27:42 -05:00
3adfe8742f Reorganize test cases 2017-12-07 15:46:49 -05:00
b49db8893b Adjust build file and documentation after Composer changes 2017-12-07 15:41:33 -05:00
79f9808f1f CS fixes 2017-12-07 15:18:25 -05:00
e6607453bc Disentangle Composer dev dependencies 2017-12-07 15:09:03 -05:00
8d0dd15c8a Remove use of SQLite IS operator; fixes #120 2017-12-06 22:26:06 -05:00
84bd624e94 Properly fix getCounters 2017-12-06 19:16:35 -05:00
af42bceac0 Do not omit zero-unread items in TTRSS getCounter operation
Though TTRSS itself (usually) omits items that have a counter of zero, at least one client takes this to mean the last-seen counter is unchanged, rather than zero.
2017-12-06 15:50:40 -05:00
adece521a9 TTRSS: Correct mark toggling; fixes #132 2017-12-01 22:13:27 -05:00
821bb22a72 SQLite concurrency tweaks; fixes #131 2017-12-01 16:37:58 -05:00
a97072d1f2 Update changelog 2017-11-30 19:46:59 -05:00
1a9628493e Fix TTRSS path handling 2017-11-30 19:39:46 -05:00
9ac2421fe3 TTRSS: accept base64 passwords; fixes #130 2017-11-30 19:31:40 -05:00
3ffcd6dd97 Make TTRSS handler reject erroneous paths 2017-11-30 17:54:56 -05:00
a404d4d108 NCNv1: Be explicit about types; fixes #129
This is actually mandated by the specification: a change in data type requires a protocol version number change
2017-11-30 14:47:39 -05:00
4d4e8e3580 TTRSS: correct feed renaming; fixes #128 2017-11-30 12:49:23 -05:00
760b13993b Version bump 2017-11-29 23:45:27 -05:00