From e327066523aa50b73d2239b82d939e1dde46c2e2 Mon Sep 17 00:00:00 2001 From: Akshay Joshi Date: Tue, 7 Dec 2021 11:48:27 +0530 Subject: [PATCH] Fixed RESQL test cases for EPAS-14 --- .../alter_package_headers_and_comment.sql | 21 ++++++ ...alter_package_headers_and_comment_msql.sql | 4 ++ .../create_package_with_all_options.sql | 23 +++++++ .../create_package_with_all_options_msql.sql | 17 +++++ .../packages/tests/ppas/14_plus/test.json | 65 +++++++++++++++++++ 5 files changed, 130 insertions(+) create mode 100644 web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/alter_package_headers_and_comment.sql create mode 100644 web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/alter_package_headers_and_comment_msql.sql create mode 100644 web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/create_package_with_all_options.sql create mode 100644 web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/create_package_with_all_options_msql.sql create mode 100644 web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/test.json diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/alter_package_headers_and_comment.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/alter_package_headers_and_comment.sql new file mode 100644 index 000000000..516589aa6 --- /dev/null +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/alter_package_headers_and_comment.sql @@ -0,0 +1,21 @@ +-- Package: public.pkg_emp_$%{}[]()&*^!@"'`\/# + +-- DROP PACKAGE public."pkg_emp_$%{}[]()&*^!@""'`\/#"; + +CREATE OR REPLACE PACKAGE public."pkg_emp_$%{}[]()&*^!@""'`\/#" +IS +FUNCTION func1(v1 integer) RETURN integer; +PROCEDURE proc1(IN v1 integer); +END "pkg_emp_$%{}[]()&*^!@""'`\/#"; + +CREATE OR REPLACE PACKAGE BODY public."pkg_emp_$%{}[]()&*^!@""'`\/#" +IS +FUNCTION func1(v1 integer) RETURN integer IS BEGIN RETURN V1+10; END FUNC1; +PROCEDURE proc1(IN v1 integer) IS BEGIN DBMS_OUTPUT.put_line(v1+50); END; + +END "pkg_emp_$%{}[]()&*^!@""'`\/#"; + +GRANT EXECUTE ON PACKAGE public."pkg_emp_$%{}[]()&*^!@""'`\/#" TO PUBLIC; + +COMMENT ON PACKAGE public."pkg_emp_$%{}[]()&*^!@""'`\/#" + IS 'test comment updated'; diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/alter_package_headers_and_comment_msql.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/alter_package_headers_and_comment_msql.sql new file mode 100644 index 000000000..00918abdd --- /dev/null +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/alter_package_headers_and_comment_msql.sql @@ -0,0 +1,4 @@ +REVOKE ALL ON PACKAGE public."pkg_emp_$%{}[]()&*^!@""'`\/#" FROM enterprisedb; + +COMMENT ON PACKAGE public."pkg_emp_$%{}[]()&*^!@""'`\/#" + IS 'test comment updated'; diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/create_package_with_all_options.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/create_package_with_all_options.sql new file mode 100644 index 000000000..5befe152e --- /dev/null +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/create_package_with_all_options.sql @@ -0,0 +1,23 @@ +-- Package: public.pkg_emp_$%{}[]()&*^!@"'`\/# + +-- DROP PACKAGE public."pkg_emp_$%{}[]()&*^!@""'`\/#"; + +CREATE OR REPLACE PACKAGE public."pkg_emp_$%{}[]()&*^!@""'`\/#" +IS +FUNCTION func1(v1 integer) RETURN integer; +PROCEDURE proc1(IN v1 integer); +END "pkg_emp_$%{}[]()&*^!@""'`\/#"; + +CREATE OR REPLACE PACKAGE BODY public."pkg_emp_$%{}[]()&*^!@""'`\/#" +IS +FUNCTION func1(v1 integer) RETURN integer IS BEGIN RETURN V1+10; END FUNC1; +PROCEDURE proc1(IN v1 integer) IS BEGIN DBMS_OUTPUT.put_line(v1+50); END; + +END "pkg_emp_$%{}[]()&*^!@""'`\/#"; + +GRANT EXECUTE ON PACKAGE public."pkg_emp_$%{}[]()&*^!@""'`\/#" TO PUBLIC; + +GRANT EXECUTE ON PACKAGE public."pkg_emp_$%{}[]()&*^!@""'`\/#" TO enterprisedb WITH GRANT OPTION; + +COMMENT ON PACKAGE public."pkg_emp_$%{}[]()&*^!@""'`\/#" + IS 'test comment'; diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/create_package_with_all_options_msql.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/create_package_with_all_options_msql.sql new file mode 100644 index 000000000..1b04f99f8 --- /dev/null +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/create_package_with_all_options_msql.sql @@ -0,0 +1,17 @@ +CREATE OR REPLACE PACKAGE public."pkg_emp_$%{}[]()&*^!@""'`\/#" +IS +FUNCTION func1(v1 integer) RETURN integer; +PROCEDURE proc1(v1 integer); +END "pkg_emp_$%{}[]()&*^!@""'`\/#"; + +CREATE OR REPLACE PACKAGE BODY public."pkg_emp_$%{}[]()&*^!@""'`\/#" +IS +FUNCTION func1(v1 integer) RETURN integer IS BEGIN RETURN V1+10; END FUNC1; +PROCEDURE proc1(v1 integer) IS BEGIN DBMS_OUTPUT.put_line(v1+50); END; + +END "pkg_emp_$%{}[]()&*^!@""'`\/#"; + +GRANT EXECUTE ON PACKAGE public."pkg_emp_$%{}[]()&*^!@""'`\/#" TO enterprisedb WITH GRANT OPTION; + +COMMENT ON PACKAGE public."pkg_emp_$%{}[]()&*^!@""'`\/#" + IS 'test comment'; diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/test.json b/web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/test.json new file mode 100644 index 000000000..29344c76d --- /dev/null +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/packages/tests/ppas/14_plus/test.json @@ -0,0 +1,65 @@ +{ + "scenarios": [ + { + "type": "create", + "name": "Create Packages", + "endpoint": "NODE-package.obj", + "sql_endpoint": "NODE-package.sql_id", + "msql_endpoint": "NODE-package.msql", + "data": + { + "name": "pkg_emp_$%{}[]()&*^!@\"'`\\/#", + "owner": "enterprisedb", + "description": "test comment", + "pkgheadsrc": "FUNCTION func1(v1 integer) RETURN integer;\nPROCEDURE proc1(v1 integer);", + "pkgbodysrc": "FUNCTION func1(v1 integer) RETURN integer IS BEGIN RETURN V1+10; END FUNC1;\nPROCEDURE proc1(v1 integer) IS BEGIN DBMS_OUTPUT.put_line(v1+50); END;", + "pkgacl": [{ + "grantee": "enterprisedb", + "grantor": "enterprisedb", + "privileges": [{ + "privilege_type": "X", + "privilege": true, + "with_grant": true + }] + }], + "schema": "public" + }, + "expected_sql_file": "create_package_with_all_options.sql", + "expected_msql_file": "create_package_with_all_options_msql.sql" + }, + { + "type": "alter", + "name": "Alter Packages", + "endpoint": "NODE-package.obj_id", + "sql_endpoint": "NODE-package.sql_id", + "msql_endpoint": "NODE-package.msql_id", + "data": + { + "description": "test comment updated", + "owner": "enterprisedb", + "pkgacl": { + "deleted": [{ + "grantee": "enterprisedb", + "grantor": "enterprisedb", + "privileges": [{ + "privilege_type": "X", + "privilege": true, + "with_grant": true + }] + }] + }, + "schema": "public" + }, + "expected_sql_file": "alter_package_headers_and_comment.sql", + "expected_msql_file": "alter_package_headers_and_comment_msql.sql" + }, + { + "type": "delete", + "name": "Drop Package", + "endpoint": "NODE-package.delete_id", + "data": { + "name": "pkg_emp_$%{}[]()&*^!@\"'`\\/#" + } + } + ] +}