Implement changes to cord-tester framework for vrouter configuration.
And add vrouter tests to verify routes.
diff --git a/src/test/flows/flowsTest.py b/src/test/flows/flowsTest.py
index 3e73559..88a7d0b 100644
--- a/src/test/flows/flowsTest.py
+++ b/src/test/flows/flowsTest.py
@@ -6,17 +6,11 @@
 import time
 import json
 import threading
-import fcntl, socket, struct
 from OnosCtrl import OnosCtrl
-from OnosFlowCtrl import OnosFlowCtrl
+from OnosFlowCtrl import OnosFlowCtrl, get_mac
 from OltConfig import OltConfig
 log.setLevel('INFO')
 
-def get_mac(iface = 'ovsbr0', pad = 4):
-    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
-    info = fcntl.ioctl(s.fileno(), 0x8927, struct.pack('256s', iface[:15]))
-    return '0'*pad + ''.join(['%02x' %ord(char) for char in info[18:24]])
-
 class flows_exchange(unittest.TestCase):
 
     #Use the first available device id as our device id to program flows
@@ -94,7 +88,7 @@
                 log.info('Pkt seen with ingress ip %s, egress ip %s' %(pkt[IP].src, pkt[IP].dst))
                 self.success = True
             sniff(count=2, timeout=5, 
-                  lfilter = lambda p: p[IP].dst == egress_map['ip'] and p[IP].src == ingress_map['ip'],
+                  lfilter = lambda p: IP in p and p[IP].dst == egress_map['ip'] and p[IP].src == ingress_map['ip'],
                   prn = recv_cb, iface = self.port_map[egress])
 
         t = threading.Thread(target = mac_recv_task)