From 46383867760fa485fa20dbee69ca5ba72f50f467 Mon Sep 17 00:00:00 2001
From: Deepak S <deepak.s@linux.intel.com>
Date: Sat, 12 Aug 2017 15:13:21 -0700
Subject: [PATCH] Verify the route list before parsing the data key

Exception:
line 502, in get_route_data
return next((route[data_key] for route in route_list if route['if'] ==
port), None)
TypeError: 'NoneType' object is not iterable

Change-Id: Ia45d90a4e9a61cb917b23efd03b86eafb249b747
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
---
 yardstick/network_services/helpers/samplevnf_helper.py | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/yardstick/network_services/helpers/samplevnf_helper.py b/yardstick/network_services/helpers/samplevnf_helper.py
index 1eefc5ffa..543d814df 100644
--- a/yardstick/network_services/helpers/samplevnf_helper.py
+++ b/yardstick/network_services/helpers/samplevnf_helper.py
@@ -499,7 +499,10 @@ class MultiPortConfig(object):
 
     def get_route_data(self, src_key, data_key, port):
         route_list = self.vnfd['vdu'][0].get(src_key, [])
-        return next((route[data_key] for route in route_list if route['if'] == port), None)
+        try:
+            return next((route[data_key] for route in route_list if route['if'] == port), None)
+        except (TypeError, StopIteration, KeyError):
+            return None
 
     def get_ports_gateway(self, port):
         return self.get_route_data('routing_table', 'gateway', port)
-- 
2.16.6