-
-
Notifications
You must be signed in to change notification settings - Fork 162
/
Copy pathunit-test-01.sql
34 lines (29 loc) · 967 Bytes
/
unit-test-01.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
BEGIN;
CREATE EXTENSION IF NOT EXISTS pgtap;
SELECT plan(8);
-- Check installed extensions
SELECT extensions_are(
ARRAY[
'plpgsql',
'pg_stat_statements',
'pgsodium',
'pgtap',
'pg_graphql',
'pgcrypto',
'pgjwt',
'pg_net',
'uuid-ossp',
'supabase_vault'
]
);
-- Check schemas exists
SELECT has_schema('pg_toast');
SELECT has_schema('pg_catalog');
SELECT has_schema('information_schema');
SELECT has_schema('public');
-- Check that service_role can execute certain pgsodium functions
SELECT function_privs_are('pgsodium', 'crypto_aead_det_decrypt', array['bytea', 'bytea', 'uuid', 'bytea'], 'service_role', array['EXECUTE']);
SELECT function_privs_are('pgsodium', 'crypto_aead_det_encrypt', array['bytea', 'bytea', 'uuid', 'bytea'], 'service_role', array['EXECUTE']);
SELECT function_privs_are('pgsodium', 'crypto_aead_det_keygen', array[]::text[], 'service_role', array['EXECUTE']);
SELECT * from finish();
ROLLBACK;