diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/templates/sequences/sql/10_plus/get_def.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/templates/sequences/sql/10_plus/get_def.sql index 9ecb461d..91ca135d 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/templates/sequences/sql/10_plus/get_def.sql +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/templates/sequences/sql/10_plus/get_def.sql @@ -8,4 +8,4 @@ SELECT seqincrement AS increment_by, is_called FROM pg_sequence, {{ conn|qtIdent(data.schema) }}.{{ conn|qtIdent(data.name) }} -WHERE seqrelid = '{{ conn|qtIdent(data.schema) }}.{{ conn|qtIdent(data.name) }}'::regclass +WHERE seqrelid = {{data.oid}} 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/pg/10_plus/alter_seq_comment.sql new file mode 100644 index 00000000..abb62082 --- /dev/null +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/alter_seq_comment.sql @@ -0,0 +1,16 @@ +-- SEQUENCE: public."Seq1_$%{}[]()&*^!@""'`\/#" + +-- DROP SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"; + +CREATE SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" + INCREMENT 5 + START 5 + MINVALUE 5 + MAXVALUE 999 + CACHE 1; + +ALTER SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" + OWNER TO postgres; + +COMMENT ON SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" + IS 'Some comment'; 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/pg/10_plus/alter_seq_props.sql new file mode 100644 index 00000000..9b29c67d --- /dev/null +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/alter_seq_props.sql @@ -0,0 +1,17 @@ +-- 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'; 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/pg/10_plus/create_sequence.sql new file mode 100644 index 00000000..6d79f516 --- /dev/null +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/create_sequence.sql @@ -0,0 +1,13 @@ +-- SEQUENCE: public."Seq1_$%{}[]()&*^!@""'`\/#" + +-- DROP SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"; + +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/10_plus/test.json b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/test.json new file mode 100644 index 00000000..6a56038a --- /dev/null +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/10_plus/test.json @@ -0,0 +1,49 @@ +{ + "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.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_comment.sql new file mode 100644 index 00000000..abb62082 --- /dev/null +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_comment.sql @@ -0,0 +1,16 @@ +-- SEQUENCE: public."Seq1_$%{}[]()&*^!@""'`\/#" + +-- DROP SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"; + +CREATE SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" + INCREMENT 5 + START 5 + MINVALUE 5 + MAXVALUE 999 + CACHE 1; + +ALTER SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#" + OWNER TO postgres; + +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_props.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_props.sql new file mode 100644 index 00000000..9b29c67d --- /dev/null +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/alter_seq_props.sql @@ -0,0 +1,17 @@ +-- 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'; diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/create_sequence.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/create_sequence.sql new file mode 100644 index 00000000..6d79f516 --- /dev/null +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/create_sequence.sql @@ -0,0 +1,13 @@ +-- SEQUENCE: public."Seq1_$%{}[]()&*^!@""'`\/#" + +-- DROP SEQUENCE public."Seq1_$%{}[]()&*^!@""'`\/#"; + +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 new file mode 100644 index 00000000..6a56038a --- /dev/null +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/tests/pg/default/test.json @@ -0,0 +1,49 @@ +{ + "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_$%{}[]()&*^!@\"'`\\/#" + } + } + ] +}