Commit graph

98 commits

Author SHA1 Message Date
Houkime 158c1f13a6 refactor(tokens-repo): switch token backend to redis
And use timezone-aware comparisons for expiry checks
2023-06-14 14:02:23 +03:00
Houkime 9cc6e304c0 test(tokens-repo): remove device order dependence from graphql test__api 2023-06-14 14:02:23 +03:00
Houkime e5756a0dd1 test(tokens-repo): cleanup recovery tests 2023-06-14 14:02:23 +03:00
Houkime 72fdd412d9 test(tokens-repo): complete the recovery test rework 2023-06-14 14:02:23 +03:00
Houkime 0b28fa2637 test(tokens-repo): rework limited uses test 2023-06-14 14:02:23 +03:00
Houkime 2d6406c8c1 test(tokens-repo): rework recovery expiration in the past 2023-06-14 14:02:23 +03:00
Houkime 18f5ff815c test(tokens-repo): rework expiring recovery key tests 2023-06-14 14:02:23 +03:00
Houkime ce4fbdae0a test(tokens-repo): check for token existense in recovery tests 2023-06-14 14:02:23 +03:00
Houkime de27032191 test(tokens-repo): move token utils to graphql common 2023-06-14 14:02:23 +03:00
Houkime 137ae58b42 test(tokens-repo): break out using recovery key 2023-06-14 14:02:23 +03:00
Houkime 92b2a67479 test(tokens-repo): use get recovery status in test of recovery use 2023-06-14 14:02:23 +03:00
Houkime 6cb9cc6d03 test(tokens-repo): use assert recent 2023-06-14 14:02:23 +03:00
Houkime 851d90b30c test(tokens-repo): break out getting recovery key 2023-06-14 14:02:23 +03:00
Houkime 503c9c99ef test(tokens-repo): break out getting status 2023-06-14 14:02:23 +03:00
Houkime d09cd1bbe1 test(tokens-repo): use assert_empty consistently 2023-06-14 14:02:22 +03:00
Houkime 1305144112 test(tokens-repo): complete untying graphql device tests from json 2023-06-14 14:02:22 +03:00
Houkime 0aaa90f54a test(tokens-repo): shrink invalid new device test 2023-06-14 14:02:22 +03:00
Houkime 592d62f53f test(tokens-repo): untie double new device auth from json 2023-06-14 14:02:22 +03:00
Houkime 367ba51c9d test(tokens-repo): untie authorize new device from json 2023-06-14 14:02:22 +03:00
Houkime e739921835 test(tokens-repo): untie get and delete new device from json 2023-06-14 14:02:22 +03:00
Houkime 102d6b1c5c test(tokens-repo): delete get new device key standalone test
we can only see if device key is valid by using it or deleting it.
another test does it
2023-06-14 14:02:22 +03:00
Houkime 6eb5800e4e test(tokens-repo): untie refresh token testing from token repo 2023-06-14 14:02:22 +03:00
Houkime 469f9d292d test(tokens-repo): make sure we try to delete the token we authed with 2023-06-14 14:02:22 +03:00
Houkime ba5f91b000 test(tokens-repo): apply assert_ok and assert_error() 2023-06-14 14:02:22 +03:00
Houkime 4676e364a6 test(tokens-repo): break out assert_data() 2023-06-14 14:02:22 +03:00
Houkime 5a1b48fa3d test(tokens-repo): break out assert_empty() 2023-06-14 14:02:22 +03:00
Houkime 7f5236701e test(tokens-repo): break out assert_ok() and assert_errorcode() in graphql 2023-06-14 14:02:22 +03:00
Houkime d8c78cc14c test(tokens-repo): untie token deletion tests from json 2023-06-14 14:02:22 +03:00
Houkime d26d115172 test(tokens-repo): break out assert_original() in graphql device tests 2023-06-14 14:02:22 +03:00
Houkime 2f707cc0cc test(tokens-repo): delete extraneous test token content copies 2023-06-14 14:02:22 +03:00
Houkime 824b018487 test(tokens-repo): make shared test token state use token repo api for loading 2023-06-14 14:02:22 +03:00
Houkime e125f3a4b1 test(tokens-repo): remove test tokens.json files
except for one which will temporarily remain
gitkeeps are to prevent shared_datadir from erroring out in a freshly
cloned repo. for now huey database and jobs fixtures use shared_datadir
2023-06-14 14:02:22 +03:00
Houkime 889c7eee6a test(tokens-repo): offload empty_keys fixture to json tests 2023-06-14 14:02:22 +03:00
Houkime 8065921862 test(tokens-repo): make empty_tokens fixture, even more minimal 2023-06-14 14:02:22 +03:00
Houkime 3e7ea01a42 test(tokens-repo): make empty_keys fixture (and derived) shareable 2023-06-14 14:02:22 +03:00
def bcfb8e62e9 refactor(repository): Tokens repository JSON backend (#18)
Co-authored-by: def <dettlaff@riseup.net>
Co-authored-by: Inex Code <inex.code@selfprivacy.org>
Reviewed-on: https://git.selfprivacy.org/SelfPrivacy/selfprivacy-rest-api/pulls/18
Co-authored-by: def <dettlaff@riseup.net>
Co-committed-by: def <dettlaff@riseup.net>
2022-12-30 21:20:17 +03:00
Houkime 67872d7c55 test(tokens-repo): use mnemonic_from_hex consistently 2022-12-26 16:22:16 +00:00
Houkime 450ff41ebd feat(tokens-repo): make device names unique before storage 2022-12-26 15:51:12 +00:00
Houkime 7d9bccf4ec fix(tokens-repo): make is_token_valid infallible 2022-12-26 15:18:02 +00:00
Houkime 5d4ed73435 fix(tokens-repo): properly expire new device keys 2022-12-26 14:01:36 +00:00
Houkime 22a309466e fix(tokens-repo): fix is_name_exists() being fallible 2022-12-21 17:04:18 +00:00
Houkime 20410ec790 fix(tokens-repo): fix name pair validation being able to raise a notfound error 2022-12-21 16:10:41 +00:00
Houkime 39277419ac refactor(tokens-repo): use tokens-repo to refresh tokens 2022-12-21 13:09:51 +00:00
Houkime d3bf867bb5 fix(tokens-repo): do not change the date on token refresh 2022-12-21 13:05:00 +00:00
Houkime a97705ef25 fix(tokens-repository): fix getting and setting recovery token expiration date 2022-12-21 10:24:05 +00:00
Houkime ab70687c61 fix(tokens-repository) :make NONE-uses-left eternally valid and test for it 2022-12-19 12:57:32 +00:00
Houkime 6f6a9f5ef0 test(tokens-repo): do not require order in test_delete_not_found_token 2022-12-16 13:04:56 +00:00
Houkime 95e200bfc5 feat(tokens-repo): reset function 2022-12-16 13:04:19 +00:00
Houkime e504585437 test(tokens-repo): do not require order 2022-12-16 13:03:53 +00:00
Houkime f2fa47466b feat(tokens-repo):empty implementation of redis token repo
But it initializes and fails tests!
2022-12-16 13:03:27 +00:00