diff --git a/tests/src/python/test_qgsserver_accesscontrol.py b/tests/src/python/test_qgsserver_accesscontrol.py index 2195c51140d..a7ac31ff33d 100644 --- a/tests/src/python/test_qgsserver_accesscontrol.py +++ b/tests/src/python/test_qgsserver_accesscontrol.py @@ -11,6 +11,7 @@ __date__ = '28/08/2015' __copyright__ = 'Copyright 2015, The QGIS Project' import qgis # NOQA +import shutil import os from shutil import copyfile @@ -146,23 +147,26 @@ class TestQgsServerAccessControl(QgsServerTestBase): cls._accesscontrol = RestrictedAccessControl(cls._server_iface) cls._server_iface.registerAccessControl(cls._accesscontrol, 100) + @classmethod + def project_file(cls): + return 'project_grp.qgs' + def setUp(self): super().setUp() self.testdata_path = unitTestDataPath("qgis_server_accesscontrol") - data_file = os.path.join(self.testdata_path, "helloworld.db") - self.assertTrue(os.path.isfile(data_file), 'Could not find data file "{}"'.format(data_file)) - copyfile(data_file, os.path.join(self.testdata_path, "_helloworld.db")) + self.tmp_path = tempfile.mkdtemp() + shutil.copytree(self.testdata_path, self.tmp_path, dirs_exist_ok=True) for k in ["QUERY_STRING", "QGIS_PROJECT_FILE"]: if k in os.environ: del os.environ[k] - self.projectPath = os.path.join(self.testdata_path, "project_grp.qgs") + self.projectPath = os.path.join(self.tmp_path, self.project_file()) self.assertTrue(os.path.isfile(self.projectPath), 'Could not find project file "{}"'.format(self.projectPath)) def tearDown(self): - copyfile(os.path.join(self.testdata_path, "_helloworld.db"), os.path.join(self.testdata_path, "helloworld.db")) + shutil.rmtree(self.tmp_path, True) def _handle_request(self, restricted, query_string, **kwargs): self._accesscontrol._active = restricted diff --git a/tests/src/python/test_qgsserver_accesscontrol_wfs_transactional.py b/tests/src/python/test_qgsserver_accesscontrol_wfs_transactional.py index 530393b4c26..6d3b8ae4114 100644 --- a/tests/src/python/test_qgsserver_accesscontrol_wfs_transactional.py +++ b/tests/src/python/test_qgsserver_accesscontrol_wfs_transactional.py @@ -25,11 +25,12 @@ WFS_TRANSACTION_INSERT = """ {x},{y} + {gid} {name} {color} -""".format(x=1000, y=2000, name="test", color="{color}", xml_ns=XML_NS) +""" WFS_TRANSACTION_UPDATE = """ @@ -56,20 +57,25 @@ WFS_TRANSACTION_DELETE = """ class TestQgsServerAccessControlWFSTransactional(TestQgsServerAccessControl): + @classmethod + def project_file(cls): + return 'project_shp.qgs' + def test_wfstransaction_insert(self): - data = WFS_TRANSACTION_INSERT.format(x=1000, y=2000, name="test", color="{color}", xml_ns=XML_NS) + data = WFS_TRANSACTION_INSERT.format(x=1, y=2, name="test", color="{color}", gid="{gid}", xml_ns=XML_NS) self._test_colors({1: "blue"}) - response, headers = self._post_fullaccess(data.format(color="red")) + response, headers = self._post_fullaccess(data.format(color="red", gid=2)) self.assertEqual( headers.get("Content-Type"), "text/xml; charset=utf-8", "Content type for Insert is wrong: %s" % headers.get("Content-Type")) + self.assertTrue( str(response).find("") != -1, "WFS/Transactions Insert don't succeed\n%s" % response) self._test_colors({2: "red"}) - response, headers = self._post_restricted(data.format(color="blue")) + response, headers = self._post_restricted(data.format(color="blue", gid=3)) self.assertEqual( headers.get("Content-Type"), "text/xml; charset=utf-8", "Content type for Insert is wrong: %s" % headers.get("Content-Type")) @@ -77,7 +83,7 @@ class TestQgsServerAccessControlWFSTransactional(TestQgsServerAccessControl): str(response).find("") == -1, "WFS/Transactions Insert succeed\n%s" % response) - response, headers = self._post_restricted(data.format(color="red"), "LAYER_PERM=no") + response, headers = self._post_restricted(data.format(color="red", gid=4), "LAYER_PERM=no") self.assertEqual( headers.get("Content-Type"), "text/xml; charset=utf-8", "Content type for Insert is wrong: %s" % headers.get("Content-Type")) @@ -86,17 +92,17 @@ class TestQgsServerAccessControlWFSTransactional(TestQgsServerAccessControl): 'No permissions to do WFS changes on layer \\\'db_point\\\'') != -1, "WFS/Transactions Insert succeed\n%s" % response) - response, headers = self._post_restricted(data.format(color="yellow"), "LAYER_PERM=yes") + response, headers = self._post_restricted(data.format(color="yellow", gid=5), "LAYER_PERM=yes") self.assertEqual( headers.get("Content-Type"), "text/xml; charset=utf-8", "Content type for Insert is wrong: %s" % headers.get("Content-Type")) self.assertTrue( str(response).find("") != -1, "WFS/Transactions Insert don't succeed\n%s" % response) - self._test_colors({3: "yellow"}) + self._test_colors({5: "yellow"}) def test_wfstransaction_update(self): - data = WFS_TRANSACTION_UPDATE.format(id="1", color="{color}", xml_ns=XML_NS) + data = WFS_TRANSACTION_UPDATE.format(id="0", color="{color}", xml_ns=XML_NS) self._test_colors({1: "blue"}) response, headers = self._post_restricted(data.format(color="yellow")) @@ -146,7 +152,7 @@ class TestQgsServerAccessControlWFSTransactional(TestQgsServerAccessControl): self._test_colors({1: "yellow"}) def test_wfstransaction_delete_fullaccess(self): - data = WFS_TRANSACTION_DELETE.format(id="1", xml_ns=XML_NS) + data = WFS_TRANSACTION_DELETE.format(id="0", xml_ns=XML_NS) self._test_colors({1: "blue"}) response, headers = self._post_fullaccess(data) @@ -155,10 +161,10 @@ class TestQgsServerAccessControlWFSTransactional(TestQgsServerAccessControl): "Content type for GetMap is wrong: %s" % headers.get("Content-Type")) self.assertTrue( str(response).find("") != -1, - "WFS/Transactions Delete don't succeed\n%s" % response) + "WFS/Transactions Delete didn't succeed\n%s" % response) def test_wfstransaction_delete_restricted(self): - data = WFS_TRANSACTION_DELETE.format(id="1", xml_ns=XML_NS) + data = WFS_TRANSACTION_DELETE.format(id="0", xml_ns=XML_NS) self._test_colors({1: "blue"}) response, headers = self._post_restricted(data) @@ -169,7 +175,7 @@ class TestQgsServerAccessControlWFSTransactional(TestQgsServerAccessControl): str(response).find("") == -1, "WFS/Transactions Delete succeed\n%s" % response) - data_update = WFS_TRANSACTION_UPDATE.format(id="1", color="red", xml_ns=XML_NS) + data_update = WFS_TRANSACTION_UPDATE.format(id="0", color="red", xml_ns=XML_NS) response, headers = self._post_fullaccess(data_update) self._test_colors({1: "red"}) diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_country.cpg b/tests/testdata/qgis_server_accesscontrol/helloworld_country.cpg new file mode 100644 index 00000000000..3ad133c048f --- /dev/null +++ b/tests/testdata/qgis_server_accesscontrol/helloworld_country.cpg @@ -0,0 +1 @@ +UTF-8 \ No newline at end of file diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_country.dbf b/tests/testdata/qgis_server_accesscontrol/helloworld_country.dbf new file mode 100644 index 00000000000..e26a6f3bf18 Binary files /dev/null and b/tests/testdata/qgis_server_accesscontrol/helloworld_country.dbf differ diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_country.prj b/tests/testdata/qgis_server_accesscontrol/helloworld_country.prj new file mode 100644 index 00000000000..5c6f76df8b8 --- /dev/null +++ b/tests/testdata/qgis_server_accesscontrol/helloworld_country.prj @@ -0,0 +1 @@ +PROJCS["WGS_1984_Web_Mercator_Auxiliary_Sphere",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Mercator_Auxiliary_Sphere"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],PARAMETER["Standard_Parallel_1",0.0],PARAMETER["Auxiliary_Sphere_Type",0.0],UNIT["Meter",1.0]] \ No newline at end of file diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_country.qmd b/tests/testdata/qgis_server_accesscontrol/helloworld_country.qmd new file mode 100644 index 00000000000..986529f5353 --- /dev/null +++ b/tests/testdata/qgis_server_accesscontrol/helloworld_country.qmd @@ -0,0 +1,26 @@ + + + + + + dataset + + + + + + + + + + 0 + 0 + + + + + false + + + + diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_country.shp b/tests/testdata/qgis_server_accesscontrol/helloworld_country.shp new file mode 100644 index 00000000000..1eeef8b9825 Binary files /dev/null and b/tests/testdata/qgis_server_accesscontrol/helloworld_country.shp differ diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_country.shx b/tests/testdata/qgis_server_accesscontrol/helloworld_country.shx new file mode 100644 index 00000000000..f0bae1285ec Binary files /dev/null and b/tests/testdata/qgis_server_accesscontrol/helloworld_country.shx differ diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_hello.cpg b/tests/testdata/qgis_server_accesscontrol/helloworld_hello.cpg new file mode 100644 index 00000000000..3ad133c048f --- /dev/null +++ b/tests/testdata/qgis_server_accesscontrol/helloworld_hello.cpg @@ -0,0 +1 @@ +UTF-8 \ No newline at end of file diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_hello.dbf b/tests/testdata/qgis_server_accesscontrol/helloworld_hello.dbf new file mode 100644 index 00000000000..080a3466d7a Binary files /dev/null and b/tests/testdata/qgis_server_accesscontrol/helloworld_hello.dbf differ diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_hello.prj b/tests/testdata/qgis_server_accesscontrol/helloworld_hello.prj new file mode 100644 index 00000000000..5c6f76df8b8 --- /dev/null +++ b/tests/testdata/qgis_server_accesscontrol/helloworld_hello.prj @@ -0,0 +1 @@ +PROJCS["WGS_1984_Web_Mercator_Auxiliary_Sphere",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Mercator_Auxiliary_Sphere"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],PARAMETER["Standard_Parallel_1",0.0],PARAMETER["Auxiliary_Sphere_Type",0.0],UNIT["Meter",1.0]] \ No newline at end of file diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_hello.qmd b/tests/testdata/qgis_server_accesscontrol/helloworld_hello.qmd new file mode 100644 index 00000000000..986529f5353 --- /dev/null +++ b/tests/testdata/qgis_server_accesscontrol/helloworld_hello.qmd @@ -0,0 +1,26 @@ + + + + + + dataset + + + + + + + + + + 0 + 0 + + + + + false + + + + diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_hello.shp b/tests/testdata/qgis_server_accesscontrol/helloworld_hello.shp new file mode 100644 index 00000000000..d8a3f89f6f5 Binary files /dev/null and b/tests/testdata/qgis_server_accesscontrol/helloworld_hello.shp differ diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_hello.shx b/tests/testdata/qgis_server_accesscontrol/helloworld_hello.shx new file mode 100644 index 00000000000..979d8666b51 Binary files /dev/null and b/tests/testdata/qgis_server_accesscontrol/helloworld_hello.shx differ diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_points.cpg b/tests/testdata/qgis_server_accesscontrol/helloworld_points.cpg new file mode 100644 index 00000000000..3ad133c048f --- /dev/null +++ b/tests/testdata/qgis_server_accesscontrol/helloworld_points.cpg @@ -0,0 +1 @@ +UTF-8 \ No newline at end of file diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_points.dbf b/tests/testdata/qgis_server_accesscontrol/helloworld_points.dbf new file mode 100644 index 00000000000..4fb311cfd21 Binary files /dev/null and b/tests/testdata/qgis_server_accesscontrol/helloworld_points.dbf differ diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_points.prj b/tests/testdata/qgis_server_accesscontrol/helloworld_points.prj new file mode 100644 index 00000000000..f45cbadf007 --- /dev/null +++ b/tests/testdata/qgis_server_accesscontrol/helloworld_points.prj @@ -0,0 +1 @@ +GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]] \ No newline at end of file diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_points.qmd b/tests/testdata/qgis_server_accesscontrol/helloworld_points.qmd new file mode 100644 index 00000000000..986529f5353 --- /dev/null +++ b/tests/testdata/qgis_server_accesscontrol/helloworld_points.qmd @@ -0,0 +1,26 @@ + + + + + + dataset + + + + + + + + + + 0 + 0 + + + + + false + + + + diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_points.shp b/tests/testdata/qgis_server_accesscontrol/helloworld_points.shp new file mode 100644 index 00000000000..c954713fd95 Binary files /dev/null and b/tests/testdata/qgis_server_accesscontrol/helloworld_points.shp differ diff --git a/tests/testdata/qgis_server_accesscontrol/helloworld_points.shx b/tests/testdata/qgis_server_accesscontrol/helloworld_points.shx new file mode 100644 index 00000000000..6f5a3012bda Binary files /dev/null and b/tests/testdata/qgis_server_accesscontrol/helloworld_points.shx differ diff --git a/tests/testdata/qgis_server_accesscontrol/project_shp.qgs b/tests/testdata/qgis_server_accesscontrol/project_shp.qgs new file mode 100644 index 00000000000..565adbc3e8c --- /dev/null +++ b/tests/testdata/qgis_server_accesscontrol/project_shp.qgs @@ -0,0 +1,4372 @@ + + + + QGIS Server Hello World + + + + + + PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"]] + +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs + 3857 + 3857 + EPSG:3857 + WGS 84 / Pseudo-Mercator + merc + WGS84 + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + points20150803121107046 + hello20131022151106574 + Hello_copy20150804164427541 + Hello_SubsetString_copy20160222085231770 + Hello_Project_SubsetString_copy20160223113949592 + dem20150730091219559 + country20131022151106556 + Country_copy20161127151800736 + country20170328164317226 + Hello_e995a3b8_79e4_4b73_8da1_82dc300b4b8c + Hello_SubsetString_e829f18d_ef33_4bfd_883f_97c1d2dd50f9 + + + + + + + + + + + + + + + + + + + meters + + -20609693.37008669599890709 + -11045674.50870379433035851 + 20961935.60850896313786507 + 19134440.47931583970785141 + + 0 + + + PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"]] + +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs + 3857 + 3857 + EPSG:3857 + WGS 84 / Pseudo-Mercator + merc + WGS84 + false + + + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -19619892.68012013286352158 + -10327100.34232237376272678 + 19972134.91854240000247955 + 18415866.31293442100286484 + + Country_copy20161127151800736 + ./helloworld_country.shp + + + + Country_Labels + + + PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"]] + +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs + 3857 + 3857 + EPSG:3857 + WGS 84 / Pseudo-Mercator + merc + WGS84 + false + + + + + + + + + + + + + + + + + 0 + 0 + + + + + true + + + + + ogr + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + . + + + + + + + + + + + + + + . + + 0 + + + 0 + generatedlayout + + + + + + + + + + name + + 2 + + + + + + + 1 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ../../../../../.. + + 0 + + + 0 + generatedlayout + + + + + + + name + + + + + -14746250.07513097859919071 + -112075.42807669920148328 + 11342200.07719692215323448 + 10914413.7141284141689539 + + Hello_Project_SubsetString_copy20160223113949592 + ./helloworld_hello.shp + + + + Hello_Filter_SubsetString + + + PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"]] + +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs + 3857 + 3857 + EPSG:3857 + WGS 84 / Pseudo-Mercator + merc + WGS84 + false + + + + + + + + + + + + + + + + + 0 + 0 + + + + + true + + + + + ogr + + + + + + + + + + + 1 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ../../../../../.. + + 0 + + + 0 + generatedlayout + + + + + + + + + + + + + + "pkuid" + + + + + -2465695.66895584994927049 + 80258.53580146089370828 + 5037064.00943838991224766 + 3762589.19456820981577039 + + Hello_SubsetString_copy20160222085231770 + ./helloworld_hello.shp|subset="pkuid" in ( '7', '8' ) + + + + Hello_Project_SubsetString + + + PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"]] + +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs + 3857 + 3857 + EPSG:3857 + WGS 84 / Pseudo-Mercator + merc + WGS84 + false + + + + + + + + + + + + + + + + + 0 + 0 + + + + + true + + + + + ogr + + + + + + + + + + + 1 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ../../../../../.. + + 0 + + + 0 + generatedlayout + + + + + + + + + + + + + + "pkuid" + + + + + -14746250.07513097859919071 + -112075.42807669920148328 + 11342200.07719692215323448 + 10914413.7141284141689539 + + Hello_SubsetString_e829f18d_ef33_4bfd_883f_97c1d2dd50f9 + ./helloworld_hello.shp + + + + Hello_Filter + + + PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"]] + +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs + 3857 + 3857 + EPSG:3857 + WGS 84 / Pseudo-Mercator + merc + WGS84 + false + + + + + + + + + + + + + + + + + 0 + 0 + + + + + false + + + + + ogr + + + + + + + + + + + 1 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + "pkuid" + + + + + 0 + 0 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ../../../../../.. + + 0 + + + 0 + generatedlayout + + + + + + + + + + + + + + "pkuid" + + + + + -14746250.07513097859919071 + -112075.42807669920148328 + 11342200.07719692215323448 + 10914413.7141284141689539 + + Hello_copy20150804164427541 + ./helloworld_hello.shp + + + + Hello_SubsetString + + + PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"]] + +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs + 3857 + 3857 + EPSG:3857 + WGS 84 / Pseudo-Mercator + merc + WGS84 + false + + + + + + + + + + + + + + + + + 0 + 0 + + + + + true + + + + + ogr + + + + + + + + + + + 1 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ../../../../../.. + + 0 + + + 0 + generatedlayout + + + + + + + + + + + + + + "pkuid" + + + + + -14746250.07513097859919071 + -112075.42807669920148328 + 11342200.07719692215323448 + 10914413.7141284141689539 + + Hello_e995a3b8_79e4_4b73_8da1_82dc300b4b8c + ./helloworld_hello.shp + + + + Hello_OnOff + + + PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"]] + +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs + 3857 + 3857 + EPSG:3857 + WGS 84 / Pseudo-Mercator + merc + WGS84 + false + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + + + + + true + + + + + + + + + + + + + ogr + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + /home + + 0 + + + 0 + generatedlayout + + + + + + + + + + + + + + + + + + + COALESCE( "pkuid", '<NULL>' ) + + 2 + + + + + + + 1 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ../../../../../.. + + 0 + + + 0 + generatedlayout + + + + + + + + + + + + + + + + + + + + + + COALESCE( "pkuid", '<NULL>' ) + + + + + -19619892.68012013286352158 + -10327100.34232237376272678 + 19972134.91854240000247955 + 18415866.31293442100286484 + + country20131022151106556 + ./helloworld_country.shp + + + + Country + + + PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"]] + +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs + 3857 + 3857 + EPSG:3857 + WGS 84 / Pseudo-Mercator + merc + WGS84 + false + + + + + + + + + + + + + + + + + 0 + 0 + + + + + true + + + + + ogr + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 0 + name + + + + + + + + + + + 0 + tablayout + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 0 + name + + + + + + + + + + + 0 + tablayout + + + + + + + + + + + + 1 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ../../../../../.. + + 0 + + + 0 + generatedlayout + + + + + + + "name" + + + + + -19619892.68012013286352158 + -10327100.34232237376272678 + 19972134.91854240000247955 + 18415866.31293442100286484 + + country20170328164317226 + ./helloworld_country.shp + + + + Country_Diagrams + + + PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"]] + +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs + 3857 + 3857 + EPSG:3857 + WGS 84 / Pseudo-Mercator + merc + WGS84 + false + + + + + + + + + + + + + + + + + 0 + 0 + + + + + true + + + + + ogr + + + + + + + + + + + 1 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + + + 0 + generatedlayout + + + + name + + + + + -29.99999999999666755 + 29.99999999999666755 + 0.00000000000333245 + 59.99999999999666755 + + dem20150730091219559 + ./dem.tif + + + + dem + + + GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]] + +proj=longlat +datum=WGS84 +no_defs + 3452 + 4326 + EPSG:4326 + WGS 84 + longlat + WGS84 + true + + + + + + + + + + + + + + + + + 0 + 0 + + + + + true + + + + + gdal + + + + + + + + 1 + 1 + 0 + + + + + + + + + None + WholeRaster + Estimated + 0.02 + 0.98 + 2 + + + 6 + 1912 + StretchToMinimumMaximum + + + + + + + 0 + + + + -14746250.07513097859919071 + -112075.42807669920148328 + 11342200.07719692215323448 + 10914413.7141284141689539 + + hello20131022151106574 + ./helloworld_hello.shp + + + + Hello + + + PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"]] + +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs + 3857 + 3857 + EPSG:3857 + WGS 84 / Pseudo-Mercator + merc + WGS84 + false + + + + + + + + + + + + + + + + + 0 + 0 + + + + + true + + + + + ogr + + + + + + + + + + + 1 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ../../../../../.. + + 0 + + + 0 + generatedlayout + + + + + + + + + + + + + + COALESCE( "pkuid", '<NULL>' ) + + + + + 1000 + 2000 + 1000 + 2000 + + points20150803121107046 + ./helloworld_points.shp + + + + db_point + + + PROJCS["WGS 84 / Pseudo-Mercator",GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]],PROJECTION["Mercator_1SP"],PARAMETER["central_meridian",0],PARAMETER["scale_factor",1],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["X",EAST],AXIS["Y",NORTH],EXTENSION["PROJ4","+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs"],AUTHORITY["EPSG","3857"]] + +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs + 3857 + 3857 + EPSG:3857 + WGS 84 / Pseudo-Mercator + merc + WGS84 + false + + + + + + + + + + + + + + + + + 0 + 0 + + + + + true + + + + + ogr + + + + + + + + + + + 1 + 1 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ../../../../../.. + + 0 + + + 0 + generatedlayout + + + + "name" + + + + + + + + + + + + + + + + + + + 255 + + + + + 1 + true + + + + 40 + 1 + to vertex + + to_vertex + to_vertex + + + enabled + enabled + + + country20131022151106556 + hello20131022151106574 + + + 40.000000 + 40.000000 + + + 1 + 1 + + advanced + + + 255 + 255 + 255 + 128 + 108 + 246 + 255 + + + + + + false + + + + + + WGS84 + + + m2 + meters + + + 50 + 16 + 30 + true + false + false + 0 + false + false + true + 0 + 255,0,0,255 + + + false + + + true + 2 + D + + + 3857 + +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs + EPSG:3857 + 1 + + + 1 + 2000 + 0 + 0 + 0 + 1 + 1 + days + + + + + + + + + dem20150730091219559 + + + + Hello_SubsetString_copy20160222085231770 + Hello_SubsetString_e829f18d_ef33_4bfd_883f_97c1d2dd50f9 + Hello_copy20150804164427541 + Hello_e995a3b8_79e4_4b73_8da1_82dc300b4b8c + country20131022151106556 + hello20131022151106574 + points20150803121107046 + + + 1 + 8 + 1 + 8 + 1 + 0 + 1 + + + + points20150803121107046 + + + points20150803121107046 + + + points20150803121107046 + + + + None + true + + QGIS + Stéphane Brunner + + + + EPSG:3857 + EPSG:4326 + + 1 + + -20609693.37008669599890709 + -11055006.82298868149518967 + 20961935.60850896313786507 + 19143772.79360072687268257 + + conditions unknown + 90 + + + + 1 + 5000 + 5000 + + 5 + false + + + + false + Simple test app. + true + QGIS Server test + 0 + + false + + + + + + + + false + + + + + false + + 5000 + + + + false + + + + + + + + + + + QGIS Server Hello World + + + + + + + + + + + + + 2000-01-01T00:00:00 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + points20150803121107046 + hello20131022151106574 + Hello_copy20150804164427541 + Hello_SubsetString_copy20160222085231770 + Hello_Project_SubsetString_copy20160223113949592 + dem20150730091219559 + country20131022151106556 + Country_copy20161127151800736 + country20170328164317226 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + points20150803121107046 + hello20131022151106574 + Hello_copy20150804164427541 + Hello_SubsetString_copy20160222085231770 + Hello_Project_SubsetString_copy20160223113949592 + dem20150730091219559 + country20131022151106556 + Country_copy20161127151800736 + country20170328164317226 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +