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_$%{}[]()&*^!@\"'`\\/#"
+      }
+    }
+  ]
+}
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.