[4696] Add RE-SQL/MSQL test cases for Materialized View

Fahar Abbas <[email protected]>
Newsgroups gmane.comp.db.postgresql.pgadmin.devel
Message-ID <CAJFwRrOsudPJ6r=HP3EMtTbE0rPz+zAyhC2Wk5TRFnehDd9zWA@mail.gmail.com>
Hi Hackers,

Please find attached the patch for RE-SQL for Materialized view.

Please review and apply the patch.

Will send MSQL patch later.

Kind Regards,
-- 
Fahar Abbas
QMG
EnterpriseDB Corporation
Phone Office: +92-51-835-8874
Phone Direct: +92-51-8466803
Mobile: +92-333-5409707
Skype ID: *live:fahar.abbas*
Website: www.enterprisedb.com
MViews_v1.patch (application/octet-stream, 8.2 KB)
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/pg/9.4_plus/alter_mview.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/pg/9.4_plus/alter_mview.sql
new file mode 100644
index 000000000..45a44ad08
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/pg/9.4_plus/alter_mview.sql
@@ -0,0 +1,13 @@
+-- View: public."testmview_$%{}[]()&*^!@""'`\/#"
+
+-- DROP MATERIALIZED VIEW public."testmview_$%{}[]()&*^!@""'`\/#";
+
+CREATE MATERIALIZED VIEW public."testmview_$%{}[]()&*^!@""'`\/#"
+TABLESPACE pg_default
+AS
+ SELECT test_mview_table.col1
+   FROM test_mview_table
+WITH DATA;
+
+ALTER TABLE public."testmview_$%{}[]()&*^!@""'`\/#"
+    OWNER TO postgres;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/pg/9.4_plus/create_mview.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/pg/9.4_plus/create_mview.sql
new file mode 100644
index 000000000..6e9e86ddc
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/pg/9.4_plus/create_mview.sql
@@ -0,0 +1,17 @@
+-- View: public."testmview_$%{}[]()&*^!@""'`\/#"
+
+-- DROP MATERIALIZED VIEW public."testmview_$%{}[]()&*^!@""'`\/#";
+
+CREATE MATERIALIZED VIEW public."testmview_$%{}[]()&*^!@""'`\/#"
+TABLESPACE pg_default
+AS
+ SELECT test_mview_table.col1
+   FROM test_mview_table
+WITH NO DATA;
+
+ALTER TABLE public."testmview_$%{}[]()&*^!@""'`\/#"
+    OWNER TO postgres;
+
+COMMENT ON MATERIALIZED VIEW public."testmview_$%{}[]()&*^!@""'`\/#"
+    IS 'Testcomment';
+
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/pg/9.4_plus/test_mview.json b/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/pg/9.4_plus/test_mview.json
new file mode 100644
index 000000000..72eb226f3
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/pg/9.4_plus/test_mview.json
@@ -0,0 +1,87 @@
+{
+	"scenarios": [{
+			"type": "create",
+			"name": "Create Table for MViews",
+			"endpoint": "NODE-table.obj",
+			"sql_endpoint": "NODE-table.sql_id",
+			"data": {
+				"name": "test_mview_table",
+				"check_constraint": [],
+				"coll_inherits": "[]",
+				"columns": [{
+					"name": "col1",
+					"cltype": "integer"
+				}],
+				"schema": "public"
+			}
+		},
+		{
+			"type": "create",
+			"name": "Create MView",
+			"endpoint": "NODE-mview.obj",
+			"sql_endpoint": "NODE-mview.sql_id",
+			"data": {
+				"definition": "select col1 from test_mview_table;",
+				"name": "testmview_$%{}[]()&*^!@\"'`\\/#",
+				"owner": "postgres",
+				"schema": "public",
+				"comment": "Testcomment",
+				"autovacuum_enabled": false,
+				"datacl": [],
+				"seclabels": [],
+				"toast_autovacuum_enabled": false,
+				"vacuum_table": [{
+					"name": "autovacuum_analyze_scale_factor"
+				}],
+				"vacuum_toast": [{
+					"name": "autovacuum_freeze_max_age"
+				}]
+			},
+			"expected_sql_file": "create_mview.sql"
+		},
+		{
+			"type": "alter",
+			"name": "Alter MView",
+			"endpoint": "NODE-mview.obj_id",
+			"sql_endpoint": "NODE-mview.sql_id",
+			"data": {
+				"definition": "select col1 from test_mview_table;",
+				"name": "testmview_$%{}[]()&*^!@\"'`\\/#",
+				"owner": "postgres",
+				"schema": "public",
+				"comment": "Testcomment",
+				"autovacuum_enabled": false,
+				"datacl": [],
+				"seclabels": [],
+				"toast_autovacuum_enabled": false,
+				"vacuum_table": [{
+					"name": "autovacuum_analyze_scale_factor"
+				}],
+				"vacuum_toast": [{
+					"name": "autovacuum_freeze_max_age"
+				}]
+			},
+			"expected_sql_file": "alter_mview.sql"
+		},
+		{
+			"type": "delete",
+			"name": "Drop MView",
+			"endpoint": "NODE-mview.obj_id",
+			"data": {
+				"name": "testmview_$%{}[]()&*^!@\"'`\\/#",
+				"owner": "postgres",
+				"schema": "public"
+			}
+		},
+		{
+			"type": "delete",
+			"name": "Drop Table for mview",
+			"endpoint": "NODE-table.obj_id",
+			"data": {
+				"name": "test_mview_table",
+				"owner": "postgres",
+				"schema": "public"
+			}
+		}
+	]
+}
\ No newline at end of file
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/ppas/9.4_plus/alter_mview.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/ppas/9.4_plus/alter_mview.sql
new file mode 100644
index 000000000..fad1f9e31
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/ppas/9.4_plus/alter_mview.sql
@@ -0,0 +1,13 @@
+-- View: public."testmview_$%{}[]()&*^!@""'`\/#"
+
+-- DROP MATERIALIZED VIEW public."testmview_$%{}[]()&*^!@""'`\/#";
+
+CREATE MATERIALIZED VIEW public."testmview_$%{}[]()&*^!@""'`\/#"
+TABLESPACE pg_default
+AS
+ SELECT test_mview_table.col1
+   FROM test_mview_table
+WITH DATA;
+
+ALTER TABLE public."testmview_$%{}[]()&*^!@""'`\/#"
+    OWNER TO enterprisedb;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/ppas/9.4_plus/create_mview.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/ppas/9.4_plus/create_mview.sql
new file mode 100644
index 000000000..e497dc37e
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/ppas/9.4_plus/create_mview.sql
@@ -0,0 +1,17 @@
+-- View: public."testmview_$%{}[]()&*^!@""'`\/#"
+
+-- DROP MATERIALIZED VIEW public."testmview_$%{}[]()&*^!@""'`\/#";
+
+CREATE MATERIALIZED VIEW public."testmview_$%{}[]()&*^!@""'`\/#"
+TABLESPACE pg_default
+AS
+ SELECT test_mview_table.col1
+   FROM test_mview_table
+WITH NO DATA;
+
+ALTER TABLE public."testmview_$%{}[]()&*^!@""'`\/#"
+    OWNER TO enterprisedb;
+
+COMMENT ON MATERIALIZED VIEW public."testmview_$%{}[]()&*^!@""'`\/#"
+    IS 'Testcomment';
+
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/ppas/9.4_plus/test_mview.json b/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/ppas/9.4_plus/test_mview.json
new file mode 100644
index 000000000..25df33592
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/views/tests/ppas/9.4_plus/test_mview.json
@@ -0,0 +1,87 @@
+{
+	"scenarios": [{
+			"type": "create",
+			"name": "Create Table for MViews",
+			"endpoint": "NODE-table.obj",
+			"sql_endpoint": "NODE-table.sql_id",
+			"data": {
+				"name": "test_mview_table",
+				"check_constraint": [],
+				"coll_inherits": "[]",
+				"columns": [{
+					"name": "col1",
+					"cltype": "integer"
+				}],
+				"schema": "public"
+			}
+		},
+		{
+			"type": "create",
+			"name": "Create MView",
+			"endpoint": "NODE-mview.obj",
+			"sql_endpoint": "NODE-mview.sql_id",
+			"data": {
+				"definition": "select col1 from test_mview_table;",
+				"name": "testmview_$%{}[]()&*^!@\"'`\\/#",
+				"owner": "enterprisedb",
+				"schema": "public",
+				"comment": "Testcomment",
+				"autovacuum_enabled": false,
+				"datacl": [],
+				"seclabels": [],
+				"toast_autovacuum_enabled": false,
+				"vacuum_table": [{
+					"name": "autovacuum_analyze_scale_factor"
+				}],
+				"vacuum_toast": [{
+					"name": "autovacuum_freeze_max_age"
+				}]
+			},
+			"expected_sql_file": "create_mview.sql"
+		},
+		{
+			"type": "alter",
+			"name": "Alter MView",
+			"endpoint": "NODE-mview.obj_id",
+			"sql_endpoint": "NODE-mview.sql_id",
+			"data": {
+				"definition": "select col1 from test_mview_table;",
+				"name": "testmview_$%{}[]()&*^!@\"'`\\/#",
+				"owner": "enterprisedb",
+				"schema": "public",
+				"comment": "Testcomment",
+				"autovacuum_enabled": false,
+				"datacl": [],
+				"seclabels": [],
+				"toast_autovacuum_enabled": false,
+				"vacuum_table": [{
+					"name": "autovacuum_analyze_scale_factor"
+				}],
+				"vacuum_toast": [{
+					"name": "autovacuum_freeze_max_age"
+				}]
+			},
+			"expected_sql_file": "alter_mview.sql"
+		},
+		{
+			"type": "delete",
+			"name": "Drop MView",
+			"endpoint": "NODE-mview.obj_id",
+			"data": {
+				"name": "testmview_$%{}[]()&*^!@\"'`\\/#",
+				"owner": "enterprisedb",
+				"schema": "public"
+			}
+		},
+		{
+			"type": "delete",
+			"name": "Drop Table for mview",
+			"endpoint": "NODE-table.obj_id",
+			"data": {
+				"name": "test_mview_table",
+				"owner": "postgres",
+				"schema": "public"
+			}
+		}
+	]
+}
\ No newline at end of file
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.