Skip to content

Commit 2c63fdb

Browse files
committed
test: split extension custom scripts tests
1 parent b88f99d commit 2c63fdb

File tree

6 files changed

+69
-60
lines changed

6 files changed

+69
-60
lines changed
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
set role extensions_role;
2+
\echo
3+
4+
-- per-extension custom scripts are run
5+
create extension fuzzystrmatch;
6+
drop extension fuzzystrmatch;
7+
select * from t2;
8+
column1
9+
---------
10+
1
11+
(1 row)
12+
13+
reset role;
14+
drop table t2;
15+
set role extensions_role;
16+
\echo
17+
18+
-- global extension custom scripts are run
19+
create extension dict_xsyn;
20+
NOTICE: extname: dict_xsyn, extschema: <NULL>, extversion: <NULL>, extcascade: f
21+
create extension insert_username version "1.0" schema public cascade;
22+
NOTICE: extname: insert_username, extschema: public, extversion: 1.0, extcascade: t
23+
\echo
24+
25+
-- custom scripts are run even for superusers
26+
reset role;
27+
create extension fuzzystrmatch;
28+
drop extension fuzzystrmatch;
29+
select * from t2;
30+
column1
31+
---------
32+
1
33+
(1 row)
34+
35+
drop table t2;
36+
set role extensions_role;
37+
\echo
38+

test/expected/privileged_extensions.out

Lines changed: 0 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -12,39 +12,6 @@ select '1=>2'::hstore;
1212
drop extension hstore;
1313
\echo
1414

15-
-- per-extension custom scripts are run
16-
select * from t2;
17-
column1
18-
---------
19-
1
20-
(1 row)
21-
22-
reset role;
23-
drop table t2;
24-
set role extensions_role;
25-
\echo
26-
27-
-- global extension custom scripts are run
28-
create extension dict_xsyn;
29-
NOTICE: extname: dict_xsyn, extschema: <NULL>, extversion: <NULL>, extcascade: f
30-
create extension insert_username version "1.0" schema public cascade;
31-
NOTICE: extname: insert_username, extschema: public, extversion: 1.0, extcascade: t
32-
\echo
33-
34-
-- custom scripts are run even for superusers
35-
reset role;
36-
create extension hstore;
37-
drop extension hstore;
38-
select * from t2;
39-
column1
40-
---------
41-
1
42-
(1 row)
43-
44-
drop table t2;
45-
set role extensions_role;
46-
\echo
47-
4815
-- cannot create other extensions
4916
create extension file_fdw;
5017
ERROR: permission denied to create extension "file_fdw"

test/init.conf.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ wal_level=logical
66

77
supautils.reserved_roles='supabase_storage_admin, anon, reserved_but_not_yet_created, authenticator*'
88
supautils.reserved_memberships='pg_read_server_files,pg_write_server_files,pg_execute_server_program,role_with_reserved_membership'
9-
supautils.privileged_extensions='autoinc, citext, hstore, sslinfo, insert_username, dict_xsyn, postgres_fdw, pageinspect'
9+
supautils.privileged_extensions='autoinc, citext, hstore, sslinfo, insert_username, dict_xsyn, fuzzystrmatch, postgres_fdw, pageinspect'
1010
supautils.constrained_extensions='{"adminpack": { "cpu": 64}, "cube": { "mem": "17 GB"}, "lo": { "disk": "100 GB"}, "amcheck": { "cpu": 2, "mem": "100 MB", "disk": "100 MB"}}'
1111
supautils.privileged_role='privileged_role'
1212
supautils.privileged_role_allowed_configs='session_replication_role, pgrst.*, other.nested.*'

test/init.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,6 @@ mkdir -p "$TMPDIR/extension-custom-scripts/autoinc"
1414
echo 'create extension citext;' > "$TMPDIR/extension-custom-scripts/autoinc/after-create.sql"
1515

1616
# assert both before-create and after-create scripts are run
17-
mkdir -p "$TMPDIR/extension-custom-scripts/hstore"
18-
echo 'create table t1();' > "$TMPDIR/extension-custom-scripts/hstore/before-create.sql"
19-
echo 'drop table t1; create table t2 as values (1);' > "$TMPDIR/extension-custom-scripts/hstore/after-create.sql"
17+
mkdir -p "$TMPDIR/extension-custom-scripts/fuzzystrmatch"
18+
echo 'create table t1();' > "$TMPDIR/extension-custom-scripts/fuzzystrmatch/before-create.sql"
19+
echo 'drop table t1; create table t2 as values (1);' > "$TMPDIR/extension-custom-scripts/fuzzystrmatch/after-create.sql"
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
set role extensions_role;
2+
\echo
3+
4+
-- per-extension custom scripts are run
5+
create extension fuzzystrmatch;
6+
drop extension fuzzystrmatch;
7+
select * from t2;
8+
9+
reset role;
10+
drop table t2;
11+
set role extensions_role;
12+
\echo
13+
14+
-- global extension custom scripts are run
15+
create extension dict_xsyn;
16+
create extension insert_username version "1.0" schema public cascade;
17+
\echo
18+
19+
-- custom scripts are run even for superusers
20+
reset role;
21+
create extension fuzzystrmatch;
22+
drop extension fuzzystrmatch;
23+
select * from t2;
24+
25+
drop table t2;
26+
set role extensions_role;
27+
\echo

test/sql/privileged_extensions.sql

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -8,29 +8,6 @@ select '1=>2'::hstore;
88
drop extension hstore;
99
\echo
1010

11-
-- per-extension custom scripts are run
12-
select * from t2;
13-
14-
reset role;
15-
drop table t2;
16-
set role extensions_role;
17-
\echo
18-
19-
-- global extension custom scripts are run
20-
create extension dict_xsyn;
21-
create extension insert_username version "1.0" schema public cascade;
22-
\echo
23-
24-
-- custom scripts are run even for superusers
25-
reset role;
26-
create extension hstore;
27-
drop extension hstore;
28-
select * from t2;
29-
30-
drop table t2;
31-
set role extensions_role;
32-
\echo
33-
3411
-- cannot create other extensions
3512
create extension file_fdw;
3613
\echo

0 commit comments

Comments
 (0)