# -*- 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''')