def test_no_code(self): with tempfile.TemporaryDirectory() as tmp: sut = JunitReporter(tmp) xml = sut.as_xml() assert 0 == self.get_suite_number(xml)
def test_two_asserts_in_the_same_test(self): with tempfile.TemporaryDirectory() as tmp: sut = JunitReporter(tmp) sut.add_comparison('foo', 'foo', True) sut.add_comparison('bar', 'bar', True) xml = sut.as_xml() print(etree.tostring(xml)) assert 1 == self.get_suite_number(xml) assert 0 == self.get_errors(xml) assert 0 == self.get_failures(xml) assert 2 == self.get_tests(xml)
def test_assert_raises_exception(self): with tempfile.TemporaryDirectory() as tmp: sut = JunitReporter(tmp) sut.add_exception('foo', Exception("foo")) xml = sut.as_xml() print(etree.tostring(xml)) assert 1 == self.get_suite_number(xml) assert 1 == self.get_errors(xml) assert 0 == self.get_failures(xml) assert 1 == self.get_tests(xml) cases = self.get_case_list(self.get_suite_by_pos(xml, 0)) assert 1 == len(cases) assert "foo" == cases[0].attrib['name']
def main(args=None): parser = argparse.ArgumentParser( prog='livedoc', description='Generate Live Documentation', ) parser.add_argument('source', help='Path to be processed') parser.add_argument('-o', '--output', default="output", help="Path to leave results") parser.add_argument('-t', '--theme', default="livedoc", help="Theme to be used.") parser.add_argument('--junit-report', dest='junit_report', default=None, help="path to junit report output") parser.add_argument('-v', '--verbose', action='count', default=0, help="Increase verbosity.") args = parser.parse_args(args or sys.argv[1:]) configure_logging(args.verbose) report = Report() report.register(ConsoleReporter()) if args.junit_report: report.register(JunitReporter(args.junit_report)) livedoc = LiveDoc(report=report, theme_name=args.theme) livedoc.process(args.source, args.output) return livedoc.status
def test_change_file(self): with tempfile.TemporaryDirectory() as tmp: sut = JunitReporter(tmp) sut.file_finish() sut.change_file("foo") sut.add_comparison('bar', 'bar', True) xml = sut.as_xml() print(etree.tostring(xml)) assert 1 == self.get_suite_number(xml) assert 0 == self.get_errors(xml) assert 0 == self.get_failures(xml) assert 1 == self.get_tests(xml)
def test_one_of_any(self): with tempfile.TemporaryDirectory() as tmp: sut = JunitReporter(tmp) sut.add_comparison('foo', 'foo', True) sut.add_comparison('bar', 'bar', False) sut.add_exception('bazz', Exception("bazz")) xml = sut.as_xml() print(etree.tostring(xml)) assert 1 == self.get_suite_number(xml) assert 1 == self.get_errors(xml) assert 1 == self.get_failures(xml) assert 3 == self.get_tests(xml) cases = self.get_case_list(self.get_suite_by_pos(xml, 0)) assert 3 == len(cases)
def test_change_test(self): with tempfile.TemporaryDirectory() as tmp: sut = JunitReporter(tmp) sut.change_test("bar") sut.add_comparison('foo', 'foo', True) xml = sut.as_xml() print(etree.tostring(xml)) assert 1 == self.get_suite_number(xml) assert 0 == self.get_errors(xml) assert 0 == self.get_failures(xml) assert 1 == self.get_tests(xml) cases = self.get_case_list(self.get_suite_by_pos(xml, 0)) assert 1 == len(cases) assert "foo" == cases[0].attrib['name']