Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Add some tests to validate assertXMLEqual
  • Loading branch information
pblottiere committed Oct 19, 2017
1 parent e50a8aa commit e90f601
Showing 1 changed file with 40 additions and 0 deletions.
40 changes: 40 additions & 0 deletions tests/src/python/test_qgsserver.py
Expand Up @@ -215,6 +215,46 @@ def _execute_request(self, qs, requestMethod=QgsServerRequest.GetMethod, data=No
return b"\n".join(headers) + b"\n\n", bytes(response.body())


class TestQgsServerTestBase(unittest.TestCase):

def test_assert_xml_equal(self):
engine = QgsServerTestBase()

# test bad assertion
expected = b'</WFSLayers>\n<Layer queryable="1">\n'
response = b'<Layer>\n'
self.assertRaises(AssertionError, engine.assertXMLEqual, response, expected)

expected = b'</WFSLayers>\n<Layer queryable="1">\n'
response = b'</WFSLayers>\n<Layer>\n'
self.assertRaises(AssertionError, engine.assertXMLEqual, response, expected)

expected = b'</WFSLayers>\n<Layer queryable="1">\n'
response = b'</WFSLayers>\n<Layer fake="1">\n'
self.assertRaises(AssertionError, engine.assertXMLEqual, response, expected)

expected = b'</WFSLayers>\n<Layer queryable="1">\n'
response = b'</WFSLayers>\n<Layer queryable="2">\n'
self.assertRaises(AssertionError, engine.assertXMLEqual, response, expected)

expected = b'<TreeName>QGIS Test Project</TreeName>\n<Layer geometryType="Point" queryable="1" displayField="name" visible="1">\n'
response = b'<TreeName>QGIS Test Project</TreeName>\n<Layer geometryType="Point" queryable="1" displayField="name">\n'
self.assertRaises(AssertionError, engine.assertXMLEqual, response, expected)

expected = b'<TreeName>QGIS Test Project</TreeName>\n<Layer geometryType="Point" queryable="1" displayField="name" visible="1">\n'
response = b'<TreeName>QGIS Test Project</TreeName>\n<Layer geometryType="Point" queryable="1" displayField="name" visible="0">\n'
self.assertRaises(AssertionError, engine.assertXMLEqual, response, expected)

# test valid assertion
expected = b'</WFSLayers>\n<Layer queryable="1">\n'
response = b'</WFSLayers>\n<Layer queryable="1">\n'
self.assertFalse(engine.assertXMLEqual(response, expected))

expected = b'<TreeName>QGIS Test Project</TreeName>\n<Layer geometryType="Point" queryable="1" displayField="name" visible="1">\n'
response = b'<TreeName>QGIS Test Project</TreeName>\n<Layer geometryType="Point" queryable="1" displayField="name" visible="1">\n'
self.assertFalse(engine.assertXMLEqual(response, expected))


class TestQgsServer(QgsServerTestBase):

"""Tests container"""
Expand Down

0 comments on commit e90f601

Please sign in to comment.