J. King
7d95e8fc09
Split Fever user management from protocol handler
6 years ago
J. King
1ce95ef4d9
Add means of testing Fever authentication
6 years ago
J. King
e45ba3f0ea
Add means of unsetting a password in the backend
6 years ago
J. King
94314f3e6d
Fix test errors when PostgreSQL or MySQL are not available
6 years ago
J. King
fe008d4343
A few more Fever authentication tests
6 years ago
J. King
3b28634447
Verify even in exceptional cases
6 years ago
J. King
07122b524a
Rename Fever user functions for consistency
6 years ago
J. King
9ebaa20633
Tests for Fever password creation and removal
6 years ago
J. King
1e2d595992
Full set of authentication tests for Fever
6 years ago
J. King
d59223bbcb
First authentication test for Fever
6 years ago
J. King
86d52c8ff9
Fix test errors when PostgreSQL or MySQL are not available
6 years ago
J. King
b02c910b1e
Make token creation check that the user exists
6 years ago
J. King
38bdde1167
Add access tokens to the db, with relevant code
Tokens are similar to sessions in that they stand in for users, but the
protocol handlers will manage them; Fever login hashes are the
originating use case for them. These must never expire, for example,
and we need to specify their values.
This commit also performs a bit of database clean-up
6 years ago
J. King
5de1844f6d
Add article selection by tag
6 years ago
J. King
e6f70527cf
Simplify tag summary
6 years ago
J. King
ff0c9a3a55
Add functionality for interacting with subscription tags
6 years ago
J. King
e2cba68c1b
Clarify various SQL queries
6 years ago
J. King
4945f8baa3
Clarify various SQL queries
6 years ago
J. King
6000d80b7b
Work around various SQLite-related problems
- WAL mode was not getting set properly
- Queries using the PDO driver could fail because PDO sucks
6 years ago
J. King
ed22090e49
Work around various SQLite-related problems
- WAL mode was not getting set properly
- Queries using the PDO driver could fail because PDO sucks
6 years ago
J. King
5efef2c2d0
Console command to refresh all feeds once; fixes #147
6 years ago
J. King
44366f48bf
Remove arbitrary search term limits; fixes #150
6 years ago
J. King
21fdd66d37
Work around limit to SQL parameter placeholders for IN() clauses
Improves #150
LIKE-based matches also need to be similarly conservative
6 years ago
J. King
837f3c6dd6
Simplify SQL type handling
This is done in anticipation of dealing with SQL types in
places other than statements
6 years ago
J. King
3b8461b1ca
Add searching to TTRSS handler
6 years ago
J. King
85307bc90a
Add parser for TTRSS search strings
6 years ago
J. King
95de375e0b
Handle folder and label exclusion
Consequently the way label data are retrieved was completely overhauled
6 years ago
J. King
677e33e518
Add text search exclusions
6 years ago
J. King
0dc82f64d5
Allow ranges in exclusion contexts
6 years ago
J. King
18d52ea402
Make exclusion contexts return their parent on change
6 years ago
J. King
b950ac066f
Restrict options in not-context and hopefully make it easier to use
6 years ago
J. King
14c02d56ac
Implement new context options other than not().
Context handling has also been re-organized to simplify later
implementation of the not() option
6 years ago
J. King
f4a74eec5d
Add all the other context options allowed by the TTRSS search syntax
6 years ago
J. King
2df7c25b66
Add ability to search note text
6 years ago
J. King
bc3182a961
Basic substring searching
6 years ago
J. King
ace94e3ef8
Fix context, and context tests
6 years ago
J. King
500851f161
Style fixes
6 years ago
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
6 years ago
J. King
5335d331f7
Fix configuration exporting
6 years ago
J. King
5cd84c4ab4
Validate configuration parameters on import, and other changes
- Each parameter is checked for type and normalized
- Interval strings are converted to DateInterval objects
- Timeouts can be specified as interval strings
- Most intervals can be null to signify infinity
- Driver classes are checked that they implement the correct interface
- Short driver names may be used, and are used by default
- Helpful errors messages are printed in case of erroneous configuration
Exporting is currently broken; this will be fixed in an upcoming commit
6 years ago
J. King
b0643de21c
Add handling of DateInterval objects to ValueInfo
6 years ago
J. King
4670dfc849
Handle connection errors
6 years ago
J. King
e92bda5373
Various changes:
- Fix handling of binary data and long strings
- Simplify handling of socket connections
- Fix coverage
6 years ago
J. King
f3b0c791f8
Fix remaining tests
6 years ago
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.
6 years ago
J. King
e501fbdc87
Remove the DatabaseInformation class in tests and use traits instead
6 years ago
J. King
81acba90dc
Use strict equality when comparing strings
6 years ago
J. King
206cca35a9
Test tweaks
6 years ago
J. King
f0d30c2eee
Make munging of queries a generic feature
6 years ago
J. King
24df564045
Mostly successful MySQL database function tests
Two failures remain, at least one requiring query munging.
6 years ago