Commit Graph

56 Commits

Author SHA1 Message Date
shockrah
7c3537e4f6 Updated target for debugger
 Tests now use the new flags required for /channels/create
 Doubled size for channel descriptions
2021-03-07 17:46:17 -08:00
shockrah
fadc7d6dc1 Removing more unused trait methods in db-lib's channel module
 /channels/list now takes a "type" parameter which defaults to TEXT_CHANNEL(1)
 Refactoring db::Channel::filter to use a more latency friendly approach
 db::Channel::Filter now returns Result<Response<Self>, SqlError>
2021-03-07 14:26:50 -08:00
shockrah
12936d5b1a Removing double log issue with client-tester
 Moving Messages struct in db-lib to root for less namespacing uglyness
 Removing an whole unused trait
 Message::get_time_range now returns a special 'UserMessage' struct that includes the name of the author
 More code must be removed from db-lib since a ton of the trait methods aren't used anymore
2021-03-07 13:29:10 -08:00
shockrah
a6e3f22eae Reverting package upgrades 2021-03-07 12:43:25 -08:00
shockrah
2fa77fecb1 Updating hyper and tokio to newest versions for better http2 support 2021-03-05 22:59:27 -08:00
shockrah
898a7a8ca2 New /members/single route
 Simple test for /members/single handler
 Should probably add some more tests to verify failure cases
2021-03-05 19:23:50 -08:00
shockrah
b999907540 * channels are now nested in "channels" key 2021-03-03 16:30:39 -08:00
shockrah
05acbfa94e Passing tests for invite routes 2021-02-25 16:05:46 -08:00
shockrah
212173f543 Fixing /join route, time check was backwards oops and it was set to GET not post 2021-02-25 15:31:45 -08:00
shockrah
ab1c9e40f7 Ower creation now gives back prettier output + server meta vars as well 2021-02-25 14:03:34 -08:00
shockrah
64125a7874 dumy test stats for no reason 2021-02-21 20:10:14 -08:00
shockrah
93fd8c2cd6 +Adding new tests for /members/me/nickname
* Fixed incorrect param key in endpoint handler
+Adding a ycm conf for easier writing
2021-02-21 18:52:35 -08:00
shockrah
5db976b9de + New route for /members/me/nickname
! No testing yet that comes in next patch, with any required fixes
+ db now has specific method for Member::update_nickk
2021-02-21 17:21:17 -08:00
shockrah
7263df8928 Adding new routes for /members/get_online & /members/me
Passing the previous tests as well
2021-02-20 20:15:43 -08:00
shockrah
34736bef3f updating tests for members routes 2021-02-20 20:14:10 -08:00
shockrah
c896870397 Reformatting of wiki:
* Adding endpoint docs and correcting some typesetting mistakes
* Change qs params to match documentation
* Splitting up articles to geneate the sidebar links properly'
* Bad baseurl issue fixed in previous patch
2021-02-18 16:29:29 -08:00
shockrah
71ebefce51 Dummy commit 2021-02-13 19:08:21 -08:00
shockrah
da1b4c3253 Trivial change to test out new filtered pipeline 2021-02-13 19:00:22 -08:00
shockrah
4323156242 Building and testing against proper nginx setup now
! No longer pipeline ready because the docker image is out of date with this change
2021-02-11 22:28:20 -08:00
shockrah
9e70e7272b removing busted conf 2021-02-11 20:21:30 -08:00
shockrah
6bc8dd0d7d tests are now ran with https as we now use https with nginx as a frontend however:
The client tester is super scuffed and no longer in a pipeline ready state as a new docker image has to be created(again)
2021-02-11 20:06:56 -08:00
shockrah
fb36f70d95 Response logs now optionally show the query string when logging, defaulting to always show the logs for now however 2021-02-11 15:04:41 -08:00
shockrah
ab6b8e460b VSCodium python interpreter directory change 2021-02-10 23:21:11 -08:00
shockrah
25755bf394 Percent decoder func found on crates.io
Link: https://docs.rs/urldecode/0.1.1/src/urldecode/lib.rs.html#1-21

Why rob? Well its slightly modified(very smol change) in that it now takes a &str and allocates a string from it
Later patches will change this so that we don't _always_ allocate frivolously
2021-02-10 23:20:51 -08:00
shockrah
16276c97e0 Moving option parameters to the query string
Large payloads will remain the body as those are typically required for post endpoints such as /message/send
2021-02-10 23:18:24 -08:00
shockrah
286a77d9ac Using virtualenv python interpreter from now on 2021-02-10 23:16:41 -08:00
shockrah
f585cf122c * switching to building options in query string
* payloads for things like /message/send are now send through the request body
* no longer sending body data in gets

This whole patch is basically so we can allow js clients to exist btw -_-
2021-02-10 23:16:19 -08:00
shockrah
21b184b324 Client tester now uses channel_id where applicable for api parameters
as well as being less explicit about what it passes to the query string
2021-02-10 23:15:05 -08:00
shockrah
2d6739438a removing unused redis dependancy 2021-02-10 18:20:28 -08:00
shockrah
eb338e03a0 + Test for qs_param behavior
Pretty simple and contains a special note about qs_param usage
2021-02-05 16:57:31 -08:00
shockrah
769aa72cdf Opting for qs_param to reduce on visual cancer 2021-02-05 16:39:24 -08:00
shockrah
ab9fef2ccc route_dispatcher now reflects new hashmap usage over serde_json::Value's
HashMap of query string parameters is generated in main_responder before passed on
2021-02-05 16:32:03 -08:00
shockrah
33ae768ae4 *+ More qs_param! usage 2021-02-05 16:29:32 -08:00
shockrah
3369b4ec48 - Removing unused code 'process_expires_parameter' function
* Switching to qs_param in only a few cases for now
2021-02-05 16:28:47 -08:00
shockrah
2cb2d2b29e + Adding serialize to db::Invite type
* Invite initialization using shorthand notation now
2021-02-05 16:26:43 -08:00
shockrah
ba5db17706 * Replacing extract_uid with qs_param!(...) usage 2021-02-05 16:25:35 -08:00
shockrah
4c92b20e74 * replacing extract_uid usage with qs_param!(....).unwrap() usage 2021-02-05 16:25:12 -08:00
shockrah
8e98df1d37 - Removed parse_json_params as its no longer used
+ Adding qs_param macro to remove boilerplate in pulling out Option<T> data from hashmaps
2021-02-05 16:24:39 -08:00
shockrah
c2e384a13a */message/send
Now polls content from the request body
* flattened a bunch of checks with data fetches to the db
Outright reduction of branches yey
2021-02-04 01:58:57 -08:00
shockrah
20aca8a069 +Parsing channel_id param correctly
+ Checking for proper permissions in user

moar if let bindings!!!1
2021-02-03 23:29:53 -08:00
shockrah
42e783ccf1 Clarification on failure return value in delete trait method 2021-02-03 23:28:14 -08:00
shockrah
7334bb287d renamed add to 'new' to show its _real_ intentions 2021-02-03 21:56:34 -08:00
shockrah
44b51133d2 * /channels/create handler uses hashmaps
* cleaned up wall of parameter parsing to be less cancerous(read diff to die instantly)
- Removed repeated db::Response in response mutator match

 Simplified how parameters are parsed by making them actually readable
2021-02-03 21:56:09 -08:00
shockrah
c1ef4c6336 -Removed _most_ direct sql manipulation for invite creation
- Removed unused/irrelevant unit tests, which now have to be rebuilt for the new codebase
2021-02-03 21:26:26 -08:00
shockrah
39a4d2a247 +New .add method for db::Invites
+New new() method to reduce on eye clutter
2021-02-03 21:25:27 -08:00
shockrah
9fac3aa117 * /join route handler now uses hashmaps among and returns more sensible http codes 2021-02-03 21:09:12 -08:00
shockrah
98803eec26 First pass of using hashmaps in /invite/create handler
+ Adding allowed_perm_invite, a helper function pulling permissions form the database to check if the user can make invites
2021-02-03 20:50:06 -08:00
shockrah
45af62ceb3 Inlining helper func for permission checking 2021-02-03 19:31:38 -08:00
shockrah
e36d0e5823 * using hashmap instead serde::ValueMap for extract_uid 2021-02-03 19:30:46 -08:00
shockrah
5737f9824d Setting payload for jwt with http:set_json_body
- Removed visual clutter extracting uid from user params
2021-02-03 19:30:12 -08:00