Merge "Obtain pod_name by CONST instead of get function"
[functest.git] / functest / ci / run_tests.py
index e26f430..87e3d37 100644 (file)
@@ -92,6 +92,8 @@ class Runner(object):
                     CONST.__setattr__('OS_TENANT_NAME', value)
                 elif key == 'OS_PASSWORD':
                     CONST.__setattr__('OS_PASSWORD', value)
+                elif key == "OS_PROJECT_DOMAIN_NAME":
+                    CONST.__setattr__('OS_PROJECT_DOMAIN_NAME', value)
 
     @staticmethod
     def get_run_dict(testname):
@@ -186,12 +188,12 @@ class Runner(object):
             self.run_tier(tier)
 
     def main(self, **kwargs):
-        if kwargs['noclean']:
+        if 'noclean' in kwargs:
             self.clean_flag = False
-        if kwargs['report']:
+        if 'report' in kwargs:
             self.report_flag = True
         try:
-            if kwargs['test']:
+            if 'test' in kwargs:
                 self.source_rc_file()
                 logger.debug("Test args: %s", kwargs['test'])
                 if self._tiers.get_tier(kwargs['test']):
@@ -241,12 +243,18 @@ class Runner(object):
         tiers = [tier] if tier else self._tiers.get_tiers()
         for tier in tiers:
             for test in tier.get_tests():
-                test_case = self.executed_test_cases[test.get_name()]
-                result = 'PASS' if(test_case.is_successful(
-                    ) == test_case.EX_OK) else 'FAIL'
-                msg.add_row([test_case.case_name, test_case.project_name,
-                             self._tiers.get_tier_name(test_case.case_name),
-                             test_case.get_duration(), result])
+                try:
+                    test_case = self.executed_test_cases[test.get_name()]
+                except KeyError:
+                    msg.add_row([test.get_name(), test.get_project(),
+                                 tier.get_name(), "00:00", "SKIP"])
+                else:
+                    result = 'PASS' if(test_case.is_successful(
+                        ) == test_case.EX_OK) else 'FAIL'
+                    msg.add_row(
+                        [test_case.case_name, test_case.project_name,
+                         self._tiers.get_tier_name(test_case.case_name),
+                         test_case.get_duration(), result])
             for test in tier.get_skipped_test():
                 msg.add_row([test.get_name(), test.get_project(),
                              tier.get_name(), "00:00", "SKIP"])