diff options
Diffstat (limited to 'tests/tabular_output/test_tsv_output_adapter.py')
-rw-r--r-- | tests/tabular_output/test_tsv_output_adapter.py | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/tabular_output/test_tsv_output_adapter.py b/tests/tabular_output/test_tsv_output_adapter.py new file mode 100644 index 0000000..707d757 --- /dev/null +++ b/tests/tabular_output/test_tsv_output_adapter.py @@ -0,0 +1,33 @@ +# -*- coding: utf-8 -*- +"""Test the tsv delimited output adapter.""" + +from __future__ import unicode_literals +from textwrap import dedent + +import pytest + +from cli_helpers.tabular_output import tsv_output_adapter + + +def test_tsv_wrapper(): + """Test the tsv output adapter.""" + # Test tab-delimited output. + data = [['ab\r\nc', '1'], ['d', '456']] + headers = ['letters', 'number'] + output = tsv_output_adapter.adapter( + iter(data), headers, table_format='tsv') + assert "\n".join(output) == dedent('''\ + letters\tnumber\n\ + ab\r\\nc\t1\n\ + d\t456''') + + +def test_unicode_with_tsv(): + """Test that the tsv wrapper can handle non-ascii characters.""" + data = [['观音', '1'], ['Ποσειδῶν', '456']] + headers = ['letters', 'number'] + output = tsv_output_adapter.adapter(data, headers) + assert "\n".join(output) == dedent('''\ + letters\tnumber\n\ + 观音\t1\n\ + Ποσειδῶν\t456''') |