示例#1
0
文件: tap.py 项目: mxie91/avocado
 def _get_tap_result(stdout):
     parser = TapParser(io.StringIO(stdout.decode()))
     result = "error"
     for event in parser.parse():
         if isinstance(event, TapParser.Bailout):
             result = "error"
             break
         elif isinstance(event, TapParser.Error):
             result = "error"
             break
         elif isinstance(event, TapParser.Plan):
             if event.skipped:
                 result = "skip"
                 break
         elif isinstance(event, TapParser.Test):
             if event.result in (TestResult.XPASS, TestResult.FAIL):
                 result = "fail"
                 break
             elif event.result == TestResult.SKIP:
                 result = "skip"
                 break
             else:
                 result = "pass"
     return result
示例#2
0
 def parse_tap(self, s):
     parser = TapParser(io.StringIO(s))
     return iter(parser.parse())
示例#3
0
 def assert_bailout(self, events, **kwargs):
     self.assertEqual(next(events), TapParser.Bailout(**kwargs))
示例#4
0
 def assert_version(self, events, **kwargs):
     self.assertEqual(next(events), TapParser.Version(**kwargs))
示例#5
0
 def assert_plan(self, events, **kwargs):
     if "skipped" not in kwargs:
         kwargs["skipped"] = False
     if "explanation" not in kwargs:
         kwargs["explanation"] = None
     self.assertEqual(next(events), TapParser.Plan(**kwargs))
示例#6
0
 def assert_test(self, events, **kwargs):
     if "explanation" not in kwargs:
         kwargs["explanation"] = None
     self.assertEqual(next(events), TapParser.Test(**kwargs))
示例#7
0
 def assert_plan(self, events, **kwargs):
     if 'skipped' not in kwargs:
         kwargs['skipped'] = False
     if 'explanation' not in kwargs:
         kwargs['explanation'] = None
     self.assertEqual(next(events), TapParser.Plan(**kwargs))