def write_diff_file(test_number, diff_filename, odf_uri, po_uri, odf_sources, po_sources): """Write a diff file which summarize the failure of a specific test. """ # Create or open the diff file diff_file_path = 'results/%s' % diff_filename diff_file = vfs.make_file(diff_file_path) # Write the header diff_file.write(25*'=' + 'Test %d FAILED' %test_number + 25*'=' + '\n') diff_file.write('INPUT: ' + str(odf_uri) + '\n') diff_file.write('OUTPUT: ' + str(po_uri) + '\n\n') diff_file.write( "The '-' sign correspond to a line that is expected but don't " "appears well or not at all after the extraction.\n" "The '+' sign correspond to a line that appears after the extraction " "but is not expected.\n") diff_file.write(25*'=' + 'Test %d FAILED' %test_number + 25*'=' + '\n') # Write the diff summary for line in ndiff(po_sources, odf_sources): diff_file.write(line.encode('utf-8') + '\n') diff_file.close()
# Import from Standard Library from mimetypes import add_type def strong_escape(s): """ a way to escape string """ return "\"" + s.replace("\"", "\\\"") + "\"" FELLOWSHIP_PREFIX = 'http://testsuite.opendocumentfellowship.com/testcases/' if __name__ == '__main__': # Open a log file for failed files if not exists('error_logs'): make_file('error_logs') errors = open('error_logs', 'rw') # does 'a' flag works ?? errors.write(errors.read()) errors.write("# -- Error log --\n") errors.write("# Please update those file manually\n") # Register ConfigFile to .conf ConfigFile.class_mimetypes = ['text/x-setup_conf'] add_type('text/x-setup_conf', '.conf') register_handler_class(ConfigFile) db = Database().get_handler('documents') count = 0 # For each test case for f in db.traverse():