def assert_output(filter_alias, doc_contents, expected_output, ext=".txt", basename=None): if not ext.startswith("."): raise Exception("ext arg to assert_in_output must start with dot") if isinstance(doc_contents, dict): raise Exception("doc contents can't be dict") with runfilter(filter_alias, doc_contents, ext=ext, basename=basename) as doc: actual_output_data = doc.output_data() if isinstance(actual_output_data, Sectioned): for section_name, expected_section_contents in expected_output.items( ): try: actual_section_contents = str( actual_output_data[section_name]) assert actual_section_contents == expected_section_contents except AssertionError: print("Sections %s are not the same" % section_name) print( char_diff(actual_section_contents, expected_section_contents)) else: actual_output_data = str(doc.output_data()) try: assert actual_output_data == expected_output except AssertionError: print(char_diff(actual_output_data, expected_output))
def assert_output(filter_alias, doc_contents, expected_output, ext=".txt", args=None): if not args: args = {} if not ext.startswith("."): raise Exception("ext arg to assert_in_output must start with dot") if isinstance(expected_output, dict): expected_output = create_ordered_dict_from_dict(expected_output) if isinstance(doc_contents, dict): doc_contents = create_ordered_dict_from_dict(doc_contents) with runfilter(filter_alias, doc_contents, ext=ext) as doc: if expected_output: try: assert doc.output().data() == expected_output except AssertionError as e: if not isinstance(expected_output, OrderedDict): print char_diff(doc.output().as_text(), expected_output) else: print "Output: %s" % doc.output().data() print "Expected: %s" % expected_output raise e else: raise Exception("Output is '%s'" % doc.output().data())
def assert_output(filter_alias, doc_contents, expected_output, ext=".txt"): if not ext.startswith("."): raise Exception("ext arg to assert_in_output must start with dot") if isinstance(expected_output, dict): expected_output = create_ordered_dict_from_dict(expected_output) with runfilter(filter_alias, doc_contents, ext=ext) as doc: try: assert doc.output().data() == expected_output except AssertionError as e: print char_diff(doc.output().data_or_dict(), expected_output) raise e
def assert_output(filter_alias, doc_contents, expected_output, ext=".txt", basename=None): if not ext.startswith("."): raise Exception("ext arg to assert_in_output must start with dot") if isinstance(doc_contents, dict): raise Exception("doc contents can't be dict") with runfilter(filter_alias, doc_contents, ext=ext, basename=basename) as doc: actual_output_data = doc.output_data() if isinstance(actual_output_data, Sectioned): for section_name, expected_section_contents in expected_output.iteritems(): try: actual_section_contents = unicode(actual_output_data[section_name]) assert actual_section_contents == expected_section_contents except AssertionError: print "Sections %s are not the same" % section_name print char_diff(actual_section_contents, expected_section_contents) else: actual_output_data = unicode(doc.output_data()) try: assert actual_output_data == expected_output except AssertionError: print char_diff(actual_output_data, expected_output)