J. King
bd6f23692c
Implement TTRSS feed subscription; fixes #92
2017-10-03 10:43:09 -04:00
J. King
97b0134e56
Merge master
2017-10-02 15:42:15 -04:00
J. King
91cce6b529
Implement all TTRSS feed and category handling except subscribing to feeds
...
- Fixes #93
- Fixes #100
- Fixes #101
- Fixes #102
- Fixes #103
- Fixes #104
2017-09-30 22:15:55 -04:00
J. King
0a0aabe4ed
Merge master
2017-09-30 12:52:05 -04:00
J. King
5488b994f7
Merged master; CS fixes
2017-09-28 10:16:24 -04:00
J. King
1af8b733b5
Implement adding TTRSS categories; fixe #99
2017-09-26 22:45:54 -04:00
J. King
8487a56a60
Tests for TTRSS session handling and version/level reporting
...
- Fixes #73
- Fixes #74
- Fixes #75
- Fixes #76
- Fixes #77
2017-09-25 10:08:37 -04:00
J. King
c393dfc42b
Sundry fixes
...
- Make use of PHP 7's null coalescing operator
- remove use of static property in Lang class
- Improve code coverage slightly
2017-09-05 19:35:14 -04:00
J. King
f7e50fe95d
Passed code through linter
2017-08-29 10:50:31 -04:00
J. King
52104fb647
Implement article cleanup; fixes #28
2017-08-17 22:36:15 -04:00
J. King
3b018c89d1
Implemented cleanup of orphaned feeds; fixes #25
2017-08-02 18:27:04 -04:00
J. King
5df7217cff
Improve REST test coverage
2017-07-24 08:15:37 -04:00
J. King
d3bca6eb47
More code coverage accommodation
2017-07-20 22:40:09 -04:00
J. King
cbdcacd1c3
Added basic code coverage annotations
2017-07-20 18:36:03 -04:00
J. King
4cded011ff
Complete implementations of server status and user status REST calls
...
- Fixes #30
- Fixes #31
- Avatars are not yet supported by the data model; blocked by issue #52
2017-07-19 18:07:36 -04:00
J. King
da092d5f8c
Changed Misc\DateFormatter to a collection of static methods and renamed it to Date; renamed Data to Arsse to avoid confusion and better reflect its centrality
2017-07-17 07:47:57 -04:00
J. King
e797de05c2
Fix NCNv1 tests
...
- Version report test was failing
- Added test for offset=0
2017-07-16 11:51:18 -04:00
J. King
4992b2c669
Tests for NCN v1 article listing and marking, with slight fixes
...
-Fixes #7
-Fixes #13
-Fixes #14
-Fixes #15
-Fixes #16
-Fixes #17
-Fixes #18
-Fixes #19
-Fixes #20
-Fixes #21
-Fixes #22
-Fixes #23
-Fixes #24
2017-07-09 17:57:18 -04:00
J. King
b3f631e335
Use more reliable database locking strategy; reorganize tests
...
PostgreSQL and MySQL both have better locking mechanisms than what was previously implemented, as well
2017-07-07 21:06:38 -04:00
J. King
17ec6cf669
Move date formatting out of SQL and standardize on the DateFormatter trait
...
Fixes #56
2017-07-07 15:25:47 -04:00
J. King
3fad820be4
REST functions for article listing and marking
...
Needs testing
2017-07-07 08:13:03 -04:00
J. King
483874e21d
Implemented query contexts
...
- Fixes #55
- Included test for Context
- Adjusted Database::editionLatest() to use Context
- Adjusted NCN handler and tests accordingly
- Also refined experimental Database::articleList() method and added experimental Database::articlePropertiesSet() method
2017-06-18 10:23:37 -04:00
J. King
2332cd52a3
Cleanup
2017-06-04 08:15:10 -04:00
J. King
dd24246f49
Finished last of feedUpdate tests; implemented NCN API functions
...
- Fixes #26
- Fixes #27
2017-06-03 17:34:37 -04:00
J. King
81419452b5
Added topmost folder to output of subscriptionList. Fixes #54
...
- Adjusted NCN handler to use the topmost folder for folderId; suppressed the actual folder so as not to pollute output with non-standard data
- Updated tests
2017-06-01 18:12:08 -04:00
J. King
97a8f473a7
More Feed tests; Linux fixes
...
- Adjusted some namespace case
- Included Linux test runner; should also work with macOS
- Made the PHP server run in the background on Windows
2017-05-21 19:51:03 -04:00
J. King
88c0f4986c
Implement NCN API v1-2 feed handling: tests
...
- Fixes #8
- Fixes #9
- Fixes #10
- Fixes #11
- Fixes #12
- Differentiated between a missing ID which is the subject of an action (e.g. the subscription when moving a subscription) and other missing IDs (e.g. the folder when moving a subscription)
- Enforced same rules for subscription titles as for folder names, save that null is valid for subscriptions
2017-05-21 10:10:36 -04:00
J. King
0972cff660
Completely revamped NCNv1 REST handler
...
- URLs are now matched centrally against a whitelist
- %-encoded URLs are still handled correctly
- Dispatched methods now only handle one specific task
- Filler methods (e.g. versionPOST) are no longer required
- Unhandled URLs now return 501 Not Implemented rather than 404 Not Found; this removes some ambiguity in the semantics of 404
2017-05-19 23:52:26 -04:00
J. King
a67fe30408
Fix whitespace
...
Also fixed my editor so tabs won't happen again!
2017-04-06 21:41:21 -04:00
J. King
74ae1106a4
Implement NCN API v1-2 server version reporting
...
- Fixes #29
- Yes, it's trivial, but now it's done!
2017-04-02 21:49:37 -04:00
J. King
9cbfa378bc
Implement NCN API v1-2 folder deleting/renaming
...
- Fixes #5
- Fixes #6
- Rewrote the NCNv1 dispatcher to better handle URL edge cases
2017-04-02 21:34:30 -04:00
J. King
19abce85c3
Implement NCN API v1-2 folder creation
...
- Fixes #4
- Tests for failure modes still required
2017-04-02 12:14:15 -04:00
J. King
842e277d43
Implemented NCN API v1-2 folder list
...
- Fixes #2
- Also re-organized REST handling
2017-04-01 23:06:52 -04:00
J. King
f902346b6c
Eliminated passing of RuntimeData instances
...
- RuntimeData has now been replaced by a single static Data class
- The Data class has a load() method which fills the same role as the constructor of RuntimeData
- The static Lang class is now an instantiable class and is a member of Data
- All tests have been adjusted and pass
- The Exception tests no longer require convoluted workarounds: a simple mock for Data::$l suffices; Lang tests also use a mock to prevent loops now instead of using a workaround
2017-03-28 18:50:00 -04:00
Dustin Wilson
7236020b8b
Changed "NewsSync" to "Arsse"
2017-03-27 23:12:12 -05:00
J. King
8b50297e6d
Complete tests for NCN version list
...
- Fixes #47
- Implemented an AbstractHandler class with a generic URL parser
2017-03-24 13:16:34 -04:00
J. King
25d9158171
Fix output of NCN version list
...
List is supposed to be contained in a JSON object, not a bare list
2017-03-19 21:54:28 -04:00
J. King
536fa5c4fd
Implement NextCloud News version detection
...
- Improves #47
- Still needs wrapping to actually output to clients
2017-03-19 21:50:00 -04:00