fixes in test scripts 52/4252/1
authorJuraj Sebin <jsebin@cisco.com>
Wed, 15 Jan 2014 10:11:27 +0000 (11:11 +0100)
committerJuraj Sebin <jsebin@cisco.com>
Wed, 15 Jan 2014 10:24:05 +0000 (11:24 +0100)
-fixed connection to controller - added port argument
-updated and stored xmls are compared based on thier values, instead of strings
-deleted duplicated method masked_value_hex_comparator

Change-Id: I411eafe605bd65204806c28fbf3981ba50530483
Signed-off-by: Juraj Sebin <jsebin@cisco.com>
test-scripts/odl_tests.py
test-scripts/xmls/f20.xml

index d967be4696c16f01924bb9562887139311aa10be..a8639cb51d7993b030e165bfd8743c0b2ad06174 100755 (executable)
@@ -4,20 +4,21 @@ import time
 import logging
 import argparse
 import unittest
-import requests
 import xml.dom.minidom as md
 from xml.etree import ElementTree as ET
-from netaddr import IPNetwork
 from string import lower
 
+import requests
+from netaddr import IPNetwork
 import mininet.node
 import mininet.topo
 import mininet.net
 import mininet.util
-
 from mininet.node import RemoteController
 from mininet.node import OVSKernelSwitch
 
+import xmltodict
+
 def create_network(controller_ip, controller_port):
     """Create topology and mininet network."""
     topo = mininet.topo.Topo()
@@ -33,7 +34,7 @@ def create_network(controller_ip, controller_port):
         {'ovsk':OVSKernelSwitch}, 'ovsk,protocols=OpenFlow13')
 
     controller=mininet.util.customConstructor(
-        {'remote': RemoteController}, 'remote,ip=%s:%s' % (controller_ip,
+        {'remote': RemoteController}, 'remote,ip=%s,port=%s' % (controller_ip,
                                                            controller_port))
 
 
@@ -224,19 +225,19 @@ def proto_match_comparator(expected_match, actual_match, kw):
                      PROTO_COMPARATORS, compare_base10_integer)
 
 
-def masked_value_hex_comparator(child, actual_match, kw):
-    emd = int(child.getElementsByTagName("metadata")[0].childNodes[0].data)
-
-    name = kw.get(child.nodeName)
-    data = child.toxml(), name, actual_match
-
-    amd = int(actual_match[kw.get(name)], 16)
-
-    emasks = child.getElementsByTagName("metadata-mask")
-    if len(emasks) != 0:
-        print 'mask present'
-
-    assert emd == amd, 'metadata: expected %s && actual %s=%s' % data
+#def masked_value_hex_comparator(child, actual_match, kw):
+#    emd = int(child.getElementsByTagName("metadata")[0].childNodes[0].data)
+#
+#    name = kw.get(child.nodeName)
+#    data = child.toxml(), name, actual_match
+#
+#    amd = int(actual_match[kw.get(name)], 16)
+#
+#    emasks = child.getElementsByTagName("metadata-mask")
+#    if len(emasks) != 0:
+#        print 'mask present'
+#
+#    assert emd == amd, 'metadata: expected %s && actual %s=%s' % data
 
 
 
@@ -550,8 +551,8 @@ def generate_tests_from_xmls(path, xmls=None):
             response = requests.get(url, auth=('admin', 'admin'),
                                     headers={'Accept': 'application/xml'})
             assert response.status_code == 200
-            req = ET.tostring(ET.fromstring(xml_string))
-            res = ET.tostring(ET.fromstring(response.text))
+            req = xmltodict.parse(ET.tostring(ET.fromstring(xml_string)))
+            res = xmltodict.parse(ET.tostring(ET.fromstring(response.text)))
             assert req == res, 'uploaded and stored xml, are not the same\n' \
                 'uploaded: %s\nstored:%s' % (req, res)
 
index 52cd62fd7d3db076e7dd703be44f93b150fa093a..75ceb28f36751c61c3d2eec28ab7744934ea3e81 100644 (file)
@@ -24,7 +24,7 @@
     <match>
         <metadata>
             <metadata>12345</metadata>
-            <metadata-mask>//FF</metadata-mask>
+            <metadata-mask>1234578</metadata-mask>
         </metadata>
     </match>
 </flow>