realaravinth
2132ab5791
feat: define interface to add user's traffic pattern
2022-05-14 18:22:21 +05:30
realaravinth
04b0073d7c
feat: migrate DB migrations to use db_*
2022-05-14 16:44:42 +05:30
realaravinth
d061824660
feat: migrate get captcha cooldown period to use db_*
2022-05-14 16:27:44 +05:30
realaravinth
7daffe767c
feat: implement get captcha cooldown period interface for sqlx postgres
2022-05-14 16:27:28 +05:30
realaravinth
09a8591cb4
feat: define get captcha cooldown period interface
2022-05-14 16:27:15 +05:30
realaravinth
9d7bb3c0be
feat: use cache busting bin and load assets generated by it
2022-05-14 16:00:22 +05:30
realaravinth
0593e254bb
feat: run cache busting via a separate bin
2022-05-14 15:59:40 +05:30
realaravinth
a971d4209d
fix and chore: refactor tests to minimize initializing DB connections
...
SUMMARY
The test suite was spinning up way too many database connections that what's
strictly needed and so the test suite was failing with[0]:
code: "53300", message: "sorry, too many clients already"
EXPERIMENTS
Tried sharing database connection pool across all tests with
async_once[0] but faced:
- IO errors
The connections were probably getting dropped in between tests
- actix Actor errors
The actor was probably not getting initialized before a
a reference to the async_once initialized app
context(crate::data::Data) is retrieved and used
FIX
crate::tests was spinning up an App context
instance(crate::data::Data) for most utility functions, which was
unnecessarily excessive.
Each test now creates an instance of the application context at the
beginning and shared a reference with all test utility functions. So
number of database connections/app context instance = number of unit
tests.
[0]: permanently fixes #22
[1]: https://docs.rs/async_once/latest/async_once/
2022-05-14 12:55:56 +05:30
realaravinth
176df3c7a7
feat: migrate get captcha levels to use db_*
2022-05-13 19:09:29 +05:30
realaravinth
ddb6d336f7
feat: implement accountnotfound and captcha notfound err vals for sqlx postgres
2022-05-13 19:09:00 +05:30
realaravinth
3edb2252af
feat: define accountnotfound and captcha notfound err vals
2022-05-13 19:08:14 +05:30
realaravinth
a7590ea14e
feat: implement getting captcha levels for sqlx postgres
2022-05-13 19:07:50 +05:30
realaravinth
04a9bc5cc7
feat: define interface for getting captcha levels
2022-05-13 19:07:27 +05:30
realaravinth
2dff139ae2
feat: migrate update_key to use db_*
2022-05-12 20:22:43 +05:30
realaravinth
b2d32c6113
feat: implement update_captcha_key for sqlx postgres
2022-05-12 20:19:08 +05:30
realaravinth
e2ebae6e2e
feat: define interface for update_captcha_key
2022-05-12 20:18:53 +05:30
realaravinth
aa5bdcf1dc
fix: upload coverage on all branches that run the coverage CI run
2022-05-12 20:18:28 +05:30
realaravinth
add7271531
feat: migrate updating captcha metadata to use db_*
2022-05-12 20:09:56 +05:30
realaravinth
6b10ed6982
feat: implement updating captcha metadata for sqlx postgres
2022-05-12 20:09:40 +05:30
realaravinth
1e6a259d57
feat: define interface for updating captcha metadata
2022-05-12 20:09:18 +05:30
realaravinth
c458e4a233
fix: inject postgres URL while running migrations
2022-05-12 19:57:06 +05:30
realaravinth
b6445000fe
feat: migrate delete captcha to use db_* interface
2022-05-12 19:56:23 +05:30
realaravinth
15c352f6b5
feat: implement delete_captcha_levels and delete_captcha for sqlx postgres
2022-05-12 19:55:51 +05:30
realaravinth
af46a3c54d
feat: define interfaces for delete_captcha_levels and delete_captcha
2022-05-12 19:55:03 +05:30
realaravinth
0c1a82b4c5
feat: migrate tests utils to use db_* interface
2022-05-12 19:33:26 +05:30
realaravinth
81ad030338
feat: migrate captcha exists to use db_* interface
2022-05-12 19:32:08 +05:30
realaravinth
0bb975a230
feat: implement captcha exists interface for sqlx postgres
2022-05-12 19:31:50 +05:30
realaravinth
55518ef650
feat: define captcha_exists interface
2022-05-12 19:31:26 +05:30
realaravinth
2f924607ab
fix: harden failure modes on hotfix test fix
2022-05-12 19:30:13 +05:30
realaravinth
28e9d67fce
fix: load correct env file
2022-05-12 19:29:48 +05:30
realaravinth
bd75fc625c
feat: migrate adding captcha to use db_* interface
2022-05-12 19:10:04 +05:30
realaravinth
79ff7b9917
feat: implement adding captcha for sqlx postgres
2022-05-12 19:09:44 +05:30
realaravinth
277d2bb9e5
feat: define interface for adding captcha
2022-05-12 19:09:25 +05:30
realaravinth
0d3d552ae0
feat: migrate create captcha to use db_*
2022-05-12 18:59:44 +05:30
realaravinth
d64b05c84f
feat: implement create captcha for sqlx postgres
2022-05-12 11:52:53 +05:30
realaravinth
00dca4a069
feat: define interface for creating captcha
2022-05-12 11:50:24 +05:30
realaravinth
049f2b6eea
feat: migrate update secret to use db_* interface
2022-05-12 10:42:55 +05:30
realaravinth
ec6b49c2e1
feat: implement update secret interface for sqlx postgres
2022-05-12 10:21:13 +05:30
realaravinth
d4a080b5fc
feat: define interface for updating user secret
2022-05-12 10:20:41 +05:30
realaravinth
25b3d316db
feat: migrate get password and get secret to use db_* interface
2022-05-11 20:21:55 +05:30
realaravinth
8813cf80ce
feat: implement get secret interface for sqlx postgres
2022-05-11 20:21:33 +05:30
realaravinth
28ddadc5fe
feat: define interface for getting user secret
2022-05-11 20:21:06 +05:30
realaravinth
f165581e17
chore: lints
2022-05-11 20:11:11 +05:30
realaravinth
96995bc068
feat: migrate get password to use db_* interface
2022-05-11 20:11:02 +05:30
realaravinth
39ee2ad221
feat: migrate update username to use db_* interface
2022-05-11 20:02:03 +05:30
realaravinth
f79d159468
feat: implement update username for sqlx postgres
2022-05-11 20:01:48 +05:30
realaravinth
83f6456a59
feat: define interface for updating username
2022-05-11 20:01:32 +05:30
realaravinth
748f48e0d2
feat: migrate update password to use db_* interface
2022-05-11 19:52:20 +05:30
realaravinth
374bbb2403
feat: implement change password for sqlx postgres
2022-05-11 19:51:39 +05:30
realaravinth
f55a383eb5
feat: define interface to change password
2022-05-11 19:51:06 +05:30