Parcourir la source

[2298] modify test_do_GET() and check_XSD_URL_PATH()

This change is due to the change of the xsd format displayed by
b10-stats-httpd.
Naoki Kambe il y a 12 ans
Parent
commit
65a6e71fc6
1 fichiers modifiés avec 6 ajouts et 66 suppressions
  1. 6 66
      src/bin/stats/tests/b10-stats-httpd_test.py

+ 6 - 66
src/bin/stats/tests/b10-stats-httpd_test.py

@@ -249,85 +249,25 @@ class TestHttpHandler(unittest.TestCase):
                 # URL is '/bind10/statistics/xml/Module/Item'
                 check_XML_URL_PATH(mod=m, item=k)
 
-        def check_XSD_URL_PATH(mod=None, item=None):
+        def check_XSD_URL_PATH():
             url_path = stats_httpd.XSD_URL_PATH
-            if mod is not None:
-                url_path = url_path + '/' + mod
-                if item is not None:
-                    url_path = url_path + '/' + item
+            url_path = urllib.parse.quote(url_path)
             self.client.putrequest('GET', url_path)
             self.client.endheaders()
             response = self.client.getresponse()
             self.assertEqual(response.getheader("Content-type"), "text/xml")
-            self.assertTrue(int(response.getheader("Content-Length")) > 0)
+            self.assertGreater(int(response.getheader("Content-Length")), 0)
             self.assertEqual(response.status, 200)
             root = xml.etree.ElementTree.parse(response).getroot()
-            url_xmlschema = '{http://www.w3.org/2001/XMLSchema}'
-            self.assertTrue(root.tag.find('schema') > 0)
+            url_xmlschema = '{%s}' % XMLNS_XSD
+            self.assertGreater(root.tag.find('schema'), 0)
             self.assertTrue(hasattr(root, 'attrib'))
             self.assertTrue('targetNamespace' in root.attrib)
             self.assertEqual(root.attrib['targetNamespace'],
                              stats_httpd.XSD_NAMESPACE)
-            if mod is None and item is None:
-                for (mod, itm) in DUMMY_DATA.items():
-                    xsdpath = '/'.join([ url_xmlschema + t for t in [ 'element', 'complexType', 'all', 'element' ] ])
-                    mod_elm = dict([ (elm.attrib['name'], elm) for elm in root.findall(xsdpath) ])
-                    self.assertTrue(mod in mod_elm)
-                    for (it, val) in itm.items():
-                        xsdpath = '/'.join([ url_xmlschema + t for t in [ 'complexType', 'all', 'element' ] ])
-                        itm_elm = dict([ (elm.attrib['name'], elm) for elm in mod_elm[mod].findall(xsdpath) ])
-                        self.assertTrue(it in itm_elm)
-                        if type(val) is list:
-                            xsdpath = '/'.join([ url_xmlschema + t for t in [ 'complexType', 'sequence', 'element' ] ])
-                            itm_elm2 = dict([ (elm.attrib['name'], elm) for elm in itm_elm[it].findall(xsdpath) ])
-                            self.assertTrue('zones' in itm_elm2)
-                            for i in val:
-                                for k in i.keys():
-                                    xsdpath = '/'.join([ url_xmlschema + t for t in [ 'complexType', 'all', 'element' ] ])
-                                    self.assertTrue(
-                                        k in [ elm.attrib['name'] for elm in itm_elm2['zones'].findall(xsdpath) ])
-            elif item is None:
-                xsdpath = '/'.join([ url_xmlschema + t for t in [ 'element', 'complexType', 'all', 'element' ] ])
-                mod_elm = dict([ (elm.attrib['name'], elm) for elm in root.findall(xsdpath) ])
-                self.assertTrue(mod in mod_elm)
-                for (it, val) in DUMMY_DATA[mod].items():
-                    xsdpath = '/'.join([ url_xmlschema + t for t in [ 'complexType', 'all', 'element' ] ])
-                    itm_elm = dict([ (elm.attrib['name'], elm) for elm in mod_elm[mod].findall(xsdpath) ])
-                    self.assertTrue(it in itm_elm)
-                    if type(val) is list:
-                        xsdpath = '/'.join([ url_xmlschema + t for t in [ 'complexType', 'sequence', 'element' ] ])
-                        itm_elm2 = dict([ (elm.attrib['name'], elm) for elm in itm_elm[it].findall(xsdpath) ])
-                        self.assertTrue('zones' in itm_elm2)
-                        for i in val:
-                            for k in i.keys():
-                                xsdpath = '/'.join([ url_xmlschema + t for t in [ 'complexType', 'all', 'element' ] ])
-                                self.assertTrue(
-                                    k in [ elm.attrib['name'] for elm in itm_elm2['zones'].findall(xsdpath) ])
-            else:
-                xsdpath = '/'.join([ url_xmlschema + t for t in [ 'element', 'complexType', 'all', 'element' ] ])
-                mod_elm = dict([ (elm.attrib['name'], elm) for elm in root.findall(xsdpath) ])
-                self.assertTrue(mod in mod_elm)
-                xsdpath = '/'.join([ url_xmlschema + t for t in [ 'complexType', 'all', 'element' ] ])
-                itm_elm = dict([ (elm.attrib['name'], elm) for elm in mod_elm[mod].findall(xsdpath) ])
-                self.assertTrue(item in itm_elm)
-                if type(DUMMY_DATA[mod][item]) is list:
-                    xsdpath = '/'.join([ url_xmlschema + t for t in [ 'complexType', 'sequence', 'element' ] ])
-                    itm_elm2 = dict([ (elm.attrib['name'], elm) for elm in itm_elm[item].findall(xsdpath) ])
-                    self.assertTrue('zones' in itm_elm2)
-                    for i in DUMMY_DATA[mod][item]:
-                        for k in i.keys():
-                            xsdpath = '/'.join([ url_xmlschema + t for t in [ 'complexType', 'all', 'element' ] ])
-                            self.assertTrue(
-                                k in [ elm.attrib['name'] for elm in itm_elm2['zones'].findall(xsdpath) ])
 
         # URL is '/bind10/statistics/xsd'
-        check_XSD_URL_PATH(mod=None, item=None)
-        for m in DUMMY_DATA:
-            # URL is '/bind10/statistics/xsd/Module'
-            check_XSD_URL_PATH(mod=m)
-            for k in DUMMY_DATA[m].keys():
-                # URL is '/bind10/statistics/xsd/Module/Item'
-                check_XSD_URL_PATH(mod=m, item=k)
+        check_XSD_URL_PATH()
 
         def check_XSL_URL_PATH(mod=None, item=None):
             url_path = stats_httpd.XSL_URL_PATH