From d6f699bb0d2a9edca539733a16f786a1b7e957ae Mon Sep 17 00:00:00 2001 From: Frederick Muriuki Muriithi Date: Mon, 19 Dec 2022 13:43:29 +0300 Subject: migrations: create oauth2_tokens table * migrations/auth/20221219_02_buSEU-create-oauth2-tokens-table.py * tests/unit/auth/test_migrations_create_tables.py --- ...20221219_02_buSEU-create-oauth2-tokens-table.py | 29 ++++++++++++++++++++++ tests/unit/auth/test_migrations_create_tables.py | 3 ++- 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 migrations/auth/20221219_02_buSEU-create-oauth2-tokens-table.py diff --git a/migrations/auth/20221219_02_buSEU-create-oauth2-tokens-table.py b/migrations/auth/20221219_02_buSEU-create-oauth2-tokens-table.py new file mode 100644 index 0000000..81ca7df --- /dev/null +++ b/migrations/auth/20221219_02_buSEU-create-oauth2-tokens-table.py @@ -0,0 +1,29 @@ +""" +create oauth2_tokens table +""" + +from yoyo import step + +__depends__ = {'20221219_01_CI3tN-create-oauth2-clients-table'} + +steps = [ + step( + """ + CREATE TABLE oauth2_tokens( + token_id TEXT NOT NULL, + client_id TEXT NOT NULL, + token_type TEXT NOT NULL, + access_token TEXT UNIQUE NOT NULL, + refresh_token TEXT, + scope TEXT, + revoked INTEGER CHECK (revoked = 0 or revoked = 1), + issued_at INTEGER NOT NULL, + expires_in INTEGER NOT NULL, + user_id TEXT NOT NULL, + PRIMARY KEY(token_id), + FOREIGN KEY (client_id) REFERENCES oauth2_clients(client_id), + FOREIGN KEY (user_id) REFERENCES users(user_id) + ) WITHOUT ROWID + """, + "DROP TABLE IF EXISTS oauth2_tokens") +] diff --git a/tests/unit/auth/test_migrations_create_tables.py b/tests/unit/auth/test_migrations_create_tables.py index 4a606b5..30644f5 100644 --- a/tests/unit/auth/test_migrations_create_tables.py +++ b/tests/unit/auth/test_migrations_create_tables.py @@ -27,7 +27,8 @@ migrations_and_tables = ( ("20221117_02_fmuZh-create-group-users-table.py", "group_users"), ("20221206_01_BbeF9-create-group-user-roles-on-resources-table.py", "group_user_roles_on_resources"), - ("20221219_01_CI3tN-create-oauth2-clients-table.py", "oauth2_clients")) + ("20221219_01_CI3tN-create-oauth2-clients-table.py", "oauth2_clients"), + ("20221219_02_buSEU-create-oauth2-tokens-table.py", "oauth2_tokens"), @pytest.mark.unit_test @pytest.mark.parametrize("migration_file,the_table", migrations_and_tables) -- cgit v1.2.3