def test_input_and_output_character_encoding_in_method_to_text_file(self): temp_fp = tempfile.NamedTemporaryFile(delete=False) temp_fp.close() my_table = Table(headers=['Álvaro'.decode('utf8').encode('utf16')], input_encoding='utf16', output_encoding='iso-8859-1') my_table.rows.append(['Píton'.decode('utf8').encode('utf16')]) my_table.to_text_file(temp_fp.name) fp = open(temp_fp.name) file_contents = fp.read() fp.close() os.remove(temp_fp.name) output = dedent(''' +--------+ | Álvaro | +--------+ | Píton | +--------+ ''').strip().decode('utf8').encode('iso-8859-1') self.assertEqual(file_contents, output)
def test_should_save_data_into_text_file(self): temp_fp = tempfile.NamedTemporaryFile(delete=False) temp_fp.close() my_table = Table(headers=['ham', 'spam', 'eggs']) my_table.rows.append({'ham': '', 'spam': '', 'eggs': ''}) my_table.rows.append({'ham': 1, 'spam': 2, 'eggs': 3}) my_table.rows.append({'ham': 11, 'spam': 22, 'eggs': 33}) my_table.to_text_file(temp_fp.name) fp = open(temp_fp.name, 'r') contents = fp.read() fp.close() os.remove(temp_fp.name) self.assertEqual(contents, dedent(''' +-----+------+------+ | ham | spam | eggs | +-----+------+------+ | | | | | 1 | 2 | 3 | | 11 | 22 | 33 | +-----+------+------+ ''').strip())
#!/usr/bin/env python from outputty import Table my_table = Table(from_csv='nice-software.csv') my_table.to_text_file('nice-software.txt')