Re: [pgAdmin][RM4469] Add RE-SQL test cases for Sequences
Aditya Toshniwal <[email protected]>
| Newsgroups | gmane.comp.db.postgresql.pgadmin.devel |
|---|---|
| Message-ID | <CAM9w-_nixiUdOheqo4HQyxLXL511B+40KEpVkJ11ssMNzg2J6g@mail.gmail.com> |
Hi Hackers, Attached is the patch containing further changes to sequences RE-SQL test cases. Changes include MSQL test cases, ACL test cases and allow run sequences test cases on EPAS servers. Kindly review. On Mon, Jul 15, 2019 at 7:26 PM Dave Page <[email protected]> wrote: > Thanks, committed. > > On Mon, Jul 15, 2019 at 12:06 PM Aditya Toshniwal < > [email protected]> wrote: > >> Hi Hackers, >> >> Attached is the patch to add RE-SQL test cases for sequences. When >> running the test cases, I also found an issue (#4470 >> <https://redmine.postgresql.org/issues/4470>). The fix for it is >> included in the patch. >> >> Kindly review. >> >> -- >> Thanks and Regards, >> Aditya Toshniwal >> Software Engineer | EnterpriseDB India | Pune >> "Don't Complain about Heat, Plant a TREE" >> > > > -- > Dave Page > Blog: http://pgsnake.blogspot.com > Twitter: @pgsnake > > EnterpriseDB UK: http://www.enterprisedb.com > The Enterprise PostgreSQL Company > -- Thanks and Regards, Aditya Toshniwal Software Engineer | EnterpriseDB India | Pune "Don't Complain about Heat, Plant a TREE"
RM4469.part2.patch
(application/octet-stream, 27.6 KB)
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/test.json b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/test.json
deleted file mode 100644
index 6a56038a..00000000
--- a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/test.json
+++ /dev/null
@@ -1,49 +0,0 @@
-{
- "scenarios": [
- {
- "type": "create",
- "name": "Create Sequence",
- "endpoint": "NODE-sequence.obj",
- "sql_endpoint": "NODE-sequence.sql_id",
- "data": {
- "name": "Seq1_$%{}[]()&*^!@\"'`\\/#",
- "seqowner": "postgres",
- "schema": "public",
- "increment": "5",
- "start": "5",
- "maximum": "999",
- "minimum": "5",
- "cache": "1",
- "cycled": false,
- "relacl": [],
- "securities": []
- },
- "expected_sql_file": "create_sequence.sql"
- },{
- "type": "alter",
- "name": "Alter Sequence comment",
- "endpoint": "NODE-sequence.obj_id",
- "sql_endpoint": "NODE-sequence.sql_id",
- "data": {
- "comment": "Some comment"
- },
- "expected_sql_file": "alter_seq_comment.sql"
- },{
- "type": "alter",
- "name": "Alter Sequence properties",
- "endpoint": "NODE-sequence.obj_id",
- "sql_endpoint": "NODE-sequence.sql_id",
- "data": {
- "current_value": "7", "increment": "12", "minimum": "2", "maximum": "9992", "cache": "2", "cycled": true
- },
- "expected_sql_file": "alter_seq_props.sql"
- },{
- "type": "delete",
- "name": "Drop sequence",
- "endpoint": "NODE-sequence.delete_id",
- "data": {
- "name": "Seq1_$%{}[]()&*^!@\"'`\\/#"
- }
- }
- ]
-}
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_comment_msql.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_comment_msql.sql
new file mode 100644
index 00000000..7a5efbd9
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_comment_msql.sql
@@ -0,0 +1,2 @@
+COMMENT ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ IS 'Some comment';
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_add.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_add.sql
new file mode 100644
index 00000000..970cd93d
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_add.sql
@@ -0,0 +1,21 @@
+-- SEQUENCE: public."Seq1_$%{}[]()&*^!@""'`\/#"
+
+-- DROP SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#";
+
+CREATE SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ CYCLE
+ INCREMENT 12
+ START 7
+ MINVALUE 2
+ MAXVALUE 9992
+ CACHE 2;
+
+ALTER SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ OWNER TO postgres;
+
+COMMENT ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ IS 'Some comment';
+
+GRANT ALL ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" TO postgres;
+
+GRANT SELECT, USAGE ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" TO PUBLIC;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_add_msql.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_add_msql.sql
new file mode 100644
index 00000000..3b79157b
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_add_msql.sql
@@ -0,0 +1 @@
+GRANT SELECT, USAGE ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" TO PUBLIC;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_remove.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_remove.sql
new file mode 100644
index 00000000..71da83b5
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_remove.sql
@@ -0,0 +1,19 @@
+-- SEQUENCE: public."Seq1_$%{}[]()&*^!@""'`\/#"
+
+-- DROP SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#";
+
+CREATE SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ CYCLE
+ INCREMENT 12
+ START 7
+ MINVALUE 2
+ MAXVALUE 9992
+ CACHE 2;
+
+ALTER SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ OWNER TO postgres;
+
+COMMENT ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ IS 'Some comment';
+
+GRANT ALL ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" TO postgres;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_remove_msql.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_remove_msql.sql
new file mode 100644
index 00000000..e8b94bad
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_remove_msql.sql
@@ -0,0 +1 @@
+REVOKE ALL ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" FROM PUBLIC;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_update.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_update.sql
new file mode 100644
index 00000000..2739b961
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_update.sql
@@ -0,0 +1,21 @@
+-- SEQUENCE: public."Seq1_$%{}[]()&*^!@""'`\/#"
+
+-- DROP SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#";
+
+CREATE SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ CYCLE
+ INCREMENT 12
+ START 7
+ MINVALUE 2
+ MAXVALUE 9992
+ CACHE 2;
+
+ALTER SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ OWNER TO postgres;
+
+COMMENT ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ IS 'Some comment';
+
+GRANT ALL ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" TO postgres;
+
+GRANT ALL ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" TO PUBLIC;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_update_msql.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_update_msql.sql
new file mode 100644
index 00000000..fe2201a1
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_privs_update_msql.sql
@@ -0,0 +1,2 @@
+REVOKE ALL ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" FROM PUBLIC;
+GRANT ALL ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" TO PUBLIC;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_props_msql.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_props_msql.sql
new file mode 100644
index 00000000..3ed0c8c1
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_props_msql.sql
@@ -0,0 +1,8 @@
+SELECT setval('public."Seq1_$%{}[]()&*^!@""''`\/#"', 7, true);
+
+ALTER SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ INCREMENT 12
+ MINVALUE 2
+ MAXVALUE 9992
+ CACHE 2
+ CYCLE;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/create_sequence_msql.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/create_sequence_msql.sql
new file mode 100644
index 00000000..67e09cd6
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/create_sequence_msql.sql
@@ -0,0 +1,9 @@
+CREATE SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ INCREMENT 5
+ START 5
+ MINVALUE 5
+ MAXVALUE 999
+ CACHE 1;
+
+ALTER SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ OWNER TO postgres;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/test.json b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/test.json
deleted file mode 100644
index 6a56038a..00000000
--- a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/test.json
+++ /dev/null
@@ -1,49 +0,0 @@
-{
- "scenarios": [
- {
- "type": "create",
- "name": "Create Sequence",
- "endpoint": "NODE-sequence.obj",
- "sql_endpoint": "NODE-sequence.sql_id",
- "data": {
- "name": "Seq1_$%{}[]()&*^!@\"'`\\/#",
- "seqowner": "postgres",
- "schema": "public",
- "increment": "5",
- "start": "5",
- "maximum": "999",
- "minimum": "5",
- "cache": "1",
- "cycled": false,
- "relacl": [],
- "securities": []
- },
- "expected_sql_file": "create_sequence.sql"
- },{
- "type": "alter",
- "name": "Alter Sequence comment",
- "endpoint": "NODE-sequence.obj_id",
- "sql_endpoint": "NODE-sequence.sql_id",
- "data": {
- "comment": "Some comment"
- },
- "expected_sql_file": "alter_seq_comment.sql"
- },{
- "type": "alter",
- "name": "Alter Sequence properties",
- "endpoint": "NODE-sequence.obj_id",
- "sql_endpoint": "NODE-sequence.sql_id",
- "data": {
- "current_value": "7", "increment": "12", "minimum": "2", "maximum": "9992", "cache": "2", "cycled": true
- },
- "expected_sql_file": "alter_seq_props.sql"
- },{
- "type": "delete",
- "name": "Drop sequence",
- "endpoint": "NODE-sequence.delete_id",
- "data": {
- "name": "Seq1_$%{}[]()&*^!@\"'`\\/#"
- }
- }
- ]
-}
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/test_sequences_pg.json b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/test_sequences_pg.json
new file mode 100644
index 00000000..3eacd2e3
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/test_sequences_pg.json
@@ -0,0 +1,132 @@
+{
+ "scenarios": [
+ {
+ "type": "create",
+ "name": "Create Sequence",
+ "endpoint": "NODE-sequence.obj",
+ "sql_endpoint": "NODE-sequence.sql_id",
+ "data": {
+ "name": "Seq1_$%{}[]()&*^!@\"'`\\/#",
+ "seqowner": "postgres",
+ "schema": "public",
+ "increment": "5",
+ "start": "5",
+ "maximum": "999",
+ "minimum": "5",
+ "cache": "1",
+ "cycled": false,
+ "relacl": [],
+ "securities": []
+ },
+ "expected_sql_file": "create_sequence.sql",
+ "expected_msql_file": "create_sequence_msql.sql"
+ },{
+ "type": "alter",
+ "name": "Alter Sequence comment",
+ "endpoint": "NODE-sequence.obj_id",
+ "sql_endpoint": "NODE-sequence.sql_id",
+ "data": {
+ "comment": "Some comment"
+ },
+ "expected_sql_file": "alter_seq_comment.sql",
+ "expected_msql_file": "alter_seq_comment_sql.sql"
+ },{
+ "type": "alter",
+ "name": "Alter Sequence properties",
+ "endpoint": "NODE-sequence.obj_id",
+ "sql_endpoint": "NODE-sequence.sql_id",
+ "data": {
+ "current_value": "7", "increment": "12", "minimum": "2", "maximum": "9992", "cache": "2", "cycled": true
+ },
+ "expected_sql_file": "alter_seq_props.sql",
+ "expected_msql_file": "alter_seq_props_msql.sql"
+ },{
+ "type": "alter",
+ "name": "Alter Sequence add privileges",
+ "endpoint": "NODE-sequence.obj_id",
+ "sql_endpoint": "NODE-sequence.sql_id",
+ "data": {
+ "relacl": {
+ "added":[{
+ "grantee": "PUBLIC",
+ "grantor": "postgres",
+ "privileges":[{
+ "privilege_type": "r",
+ "privilege": true,
+ "with_grant": false
+ },{
+ "privilege_type": "U",
+ "privilege": true,
+ "with_grant": false
+ }]
+ }]
+ }
+ },
+ "expected_sql_file": "alter_seq_privs_add.sql",
+ "expected_msql_file": "alter_seq_privs_add_msql.sql"
+ },{
+ "type": "alter",
+ "name": "Alter Sequence update privileges",
+ "endpoint": "NODE-sequence.obj_id",
+ "sql_endpoint": "NODE-sequence.sql_id",
+ "data": {
+ "relacl": {
+ "changed":[{
+ "grantee": "PUBLIC",
+ "grantor": "postgres",
+ "privileges":[{
+ "privilege_type": "r",
+ "privilege": true,
+ "with_grant": false
+ },{
+ "privilege_type": "U",
+ "privilege": true,
+ "with_grant": false
+ },{
+ "privilege_type": "w",
+ "privilege": true,
+ "with_grant": false
+ }]
+ }]
+ }
+ },
+ "expected_sql_file": "alter_seq_privs_update.sql",
+ "expected_msql_file": "alter_seq_privs_update_msql.sql"
+ },{
+ "type": "alter",
+ "name": "Alter Sequence remove privileges",
+ "endpoint": "NODE-sequence.obj_id",
+ "sql_endpoint": "NODE-sequence.sql_id",
+ "data": {
+ "relacl": {
+ "deleted":[{
+ "grantee": "PUBLIC",
+ "grantor": "postgres",
+ "privileges":[{
+ "privilege_type": "r",
+ "privilege": true,
+ "with_grant": false
+ },{
+ "privilege_type": "U",
+ "privilege": true,
+ "with_grant": false
+ },{
+ "privilege_type": "w",
+ "privilege": true,
+ "with_grant": false
+ }]
+ }]
+ }
+ },
+ "expected_sql_file": "alter_seq_privs_remove.sql",
+ "expected_msql_file": "alter_seq_privs_remove_msql.sql"
+ },{
+ "type": "delete",
+ "name": "Drop sequence",
+ "endpoint": "NODE-sequence.delete_id",
+ "data": {
+ "name": "Seq1_$%{}[]()&*^!@\"'`\\/#"
+ }
+ }
+ ]
+}
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/alter_seq_comment.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_comment.sql
similarity index 92%
rename from web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/alter_seq_comment.sql
rename to web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_comment.sql
index abb62082..536a4b90 100644
--- a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/alter_seq_comment.sql
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_comment.sql
@@ -10,7 +10,7 @@ CREATE SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
CACHE 1;
ALTER SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
- OWNER TO postgres;
+ OWNER TO enterprisedb;
COMMENT ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
IS 'Some comment';
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_comment_msql.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_comment_msql.sql
new file mode 100644
index 00000000..7a5efbd9
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_comment_msql.sql
@@ -0,0 +1,2 @@
+COMMENT ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ IS 'Some comment';
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_add.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_add.sql
new file mode 100644
index 00000000..04833fe0
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_add.sql
@@ -0,0 +1,21 @@
+-- SEQUENCE: public."Seq1_$%{}[]()&*^!@""'`\/#"
+
+-- DROP SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#";
+
+CREATE SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ CYCLE
+ INCREMENT 12
+ START 7
+ MINVALUE 2
+ MAXVALUE 9992
+ CACHE 2;
+
+ALTER SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ OWNER TO enterprisedb;
+
+COMMENT ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ IS 'Some comment';
+
+GRANT SELECT, USAGE ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" TO PUBLIC;
+
+GRANT ALL ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" TO enterprisedb;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_add_msql.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_add_msql.sql
new file mode 100644
index 00000000..3b79157b
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_add_msql.sql
@@ -0,0 +1 @@
+GRANT SELECT, USAGE ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" TO PUBLIC;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_remove.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_remove.sql
new file mode 100644
index 00000000..c9794c03
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_remove.sql
@@ -0,0 +1,19 @@
+-- SEQUENCE: public."Seq1_$%{}[]()&*^!@""'`\/#"
+
+-- DROP SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#";
+
+CREATE SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ CYCLE
+ INCREMENT 12
+ START 7
+ MINVALUE 2
+ MAXVALUE 9992
+ CACHE 2;
+
+ALTER SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ OWNER TO enterprisedb;
+
+COMMENT ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ IS 'Some comment';
+
+GRANT ALL ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" TO enterprisedb;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_remove_msql.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_remove_msql.sql
new file mode 100644
index 00000000..e8b94bad
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_remove_msql.sql
@@ -0,0 +1 @@
+REVOKE ALL ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" FROM PUBLIC;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_update.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_update.sql
new file mode 100644
index 00000000..7a46a355
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_update.sql
@@ -0,0 +1,21 @@
+-- SEQUENCE: public."Seq1_$%{}[]()&*^!@""'`\/#"
+
+-- DROP SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#";
+
+CREATE SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ CYCLE
+ INCREMENT 12
+ START 7
+ MINVALUE 2
+ MAXVALUE 9992
+ CACHE 2;
+
+ALTER SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ OWNER TO enterprisedb;
+
+COMMENT ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ IS 'Some comment';
+
+GRANT ALL ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" TO PUBLIC;
+
+GRANT ALL ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" TO enterprisedb;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_update_msql.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_update_msql.sql
new file mode 100644
index 00000000..fe2201a1
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_privs_update_msql.sql
@@ -0,0 +1,2 @@
+REVOKE ALL ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" FROM PUBLIC;
+GRANT ALL ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" TO PUBLIC;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/alter_seq_props.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_props.sql
similarity index 93%
rename from web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/alter_seq_props.sql
rename to web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_props.sql
index 9b29c67d..3c5f254a 100644
--- a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/alter_seq_props.sql
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_props.sql
@@ -11,7 +11,7 @@ CREATE SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
CACHE 2;
ALTER SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
- OWNER TO postgres;
+ OWNER TO enterprisedb;
COMMENT ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
IS 'Some comment';
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_props_msql.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_props_msql.sql
new file mode 100644
index 00000000..3ed0c8c1
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/alter_seq_props_msql.sql
@@ -0,0 +1,8 @@
+SELECT setval('public."Seq1_$%{}[]()&*^!@""''`\/#"', 7, true);
+
+ALTER SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ INCREMENT 12
+ MINVALUE 2
+ MAXVALUE 9992
+ CACHE 2
+ CYCLE;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/create_sequence.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/create_sequence.sql
similarity index 91%
rename from web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/create_sequence.sql
rename to web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/create_sequence.sql
index 6d79f516..25aa799a 100644
--- a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/create_sequence.sql
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/create_sequence.sql
@@ -10,4 +10,4 @@ CREATE SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
CACHE 1;
ALTER SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
- OWNER TO postgres;
+ OWNER TO enterprisedb;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/create_sequence_msql.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/create_sequence_msql.sql
new file mode 100644
index 00000000..f926dbec
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/create_sequence_msql.sql
@@ -0,0 +1,9 @@
+CREATE SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ INCREMENT 5
+ START 5
+ MINVALUE 5
+ MAXVALUE 999
+ CACHE 1;
+
+ALTER SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"
+ OWNER TO enterprisedb;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/test_sequences_ppas.json b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/test_sequences_ppas.json
new file mode 100644
index 00000000..194940ee
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/ppas/default/test_sequences_ppas.json
@@ -0,0 +1,132 @@
+{
+ "scenarios": [
+ {
+ "type": "create",
+ "name": "Create Sequence",
+ "endpoint": "NODE-sequence.obj",
+ "sql_endpoint": "NODE-sequence.sql_id",
+ "data": {
+ "name": "Seq1_$%{}[]()&*^!@\"'`\\/#",
+ "seqowner": "enterprisedb",
+ "schema": "public",
+ "increment": "5",
+ "start": "5",
+ "maximum": "999",
+ "minimum": "5",
+ "cache": "1",
+ "cycled": false,
+ "relacl": [],
+ "securities": []
+ },
+ "expected_sql_file": "create_sequence.sql",
+ "expected_msql_file": "create_sequence_msql.sql"
+ },{
+ "type": "alter",
+ "name": "Alter Sequence comment",
+ "endpoint": "NODE-sequence.obj_id",
+ "sql_endpoint": "NODE-sequence.sql_id",
+ "data": {
+ "comment": "Some comment"
+ },
+ "expected_sql_file": "alter_seq_comment.sql",
+ "expected_msql_file": "alter_seq_comment_sql.sql"
+ },{
+ "type": "alter",
+ "name": "Alter Sequence properties",
+ "endpoint": "NODE-sequence.obj_id",
+ "sql_endpoint": "NODE-sequence.sql_id",
+ "data": {
+ "current_value": "7", "increment": "12", "minimum": "2", "maximum": "9992", "cache": "2", "cycled": true
+ },
+ "expected_sql_file": "alter_seq_props.sql",
+ "expected_msql_file": "alter_seq_props_msql.sql"
+ },{
+ "type": "alter",
+ "name": "Alter Sequence add privileges",
+ "endpoint": "NODE-sequence.obj_id",
+ "sql_endpoint": "NODE-sequence.sql_id",
+ "data": {
+ "relacl": {
+ "added":[{
+ "grantee": "PUBLIC",
+ "grantor": "enterprisedb",
+ "privileges":[{
+ "privilege_type": "r",
+ "privilege": true,
+ "with_grant": false
+ },{
+ "privilege_type": "U",
+ "privilege": true,
+ "with_grant": false
+ }]
+ }]
+ }
+ },
+ "expected_sql_file": "alter_seq_privs_add.sql",
+ "expected_msql_file": "alter_seq_privs_add_msql.sql"
+ },{
+ "type": "alter",
+ "name": "Alter Sequence update privileges",
+ "endpoint": "NODE-sequence.obj_id",
+ "sql_endpoint": "NODE-sequence.sql_id",
+ "data": {
+ "relacl": {
+ "changed":[{
+ "grantee": "PUBLIC",
+ "grantor": "enterprisedb",
+ "privileges":[{
+ "privilege_type": "r",
+ "privilege": true,
+ "with_grant": false
+ },{
+ "privilege_type": "U",
+ "privilege": true,
+ "with_grant": false
+ },{
+ "privilege_type": "w",
+ "privilege": true,
+ "with_grant": false
+ }]
+ }]
+ }
+ },
+ "expected_sql_file": "alter_seq_privs_update.sql",
+ "expected_msql_file": "alter_seq_privs_update_msql.sql"
+ },{
+ "type": "alter",
+ "name": "Alter Sequence remove privileges",
+ "endpoint": "NODE-sequence.obj_id",
+ "sql_endpoint": "NODE-sequence.sql_id",
+ "data": {
+ "relacl": {
+ "deleted":[{
+ "grantee": "PUBLIC",
+ "grantor": "enterprisedb",
+ "privileges":[{
+ "privilege_type": "r",
+ "privilege": true,
+ "with_grant": false
+ },{
+ "privilege_type": "U",
+ "privilege": true,
+ "with_grant": false
+ },{
+ "privilege_type": "w",
+ "privilege": true,
+ "with_grant": false
+ }]
+ }]
+ }
+ },
+ "expected_sql_file": "alter_seq_privs_remove.sql",
+ "expected_msql_file": "alter_seq_privs_remove_msql.sql"
+ },{
+ "type": "delete",
+ "name": "Drop sequence",
+ "endpoint": "NODE-sequence.delete_id",
+ "data": {
+ "name": "Seq1_$%{}[]()&*^!@\"'`\\/#"
+ }
+ }
+ ]
+}