def test_csv_input_utf8(self, tmpdir): main = tmpdir.join('main.csv') main.write_text('colA\néαГ😼𝒞人', encoding='utf8') csvinput = CSVInput(input_name=tmpdir.strpath, main_sheet_name='main') # defaults to utf8 csvinput.read_sheets() assert list(csvinput.get_main_sheet_lines()) == \ [{'colA': 'éαГ😼𝒞人'}] assert csvinput.sub_sheet_names == []
def test_csv_input_latin1(self, tmpdir): main = tmpdir.join('main.csv') main.write_text('colA\né', encoding='latin-1') csvinput = CSVInput(input_name=tmpdir.strpath, main_sheet_name='main') csvinput.encoding = 'latin-1' csvinput.read_sheets() assert list(csvinput.get_main_sheet_lines()) == \ [{'colA': 'é'}] assert csvinput.sub_sheet_names == []
def test_csv_input_utf16(self, tmpdir): main = tmpdir.join('main.csv') main.write_text('colA\néαГ😼𝒞人', encoding='utf16') csvinput = CSVInput(input_name=tmpdir.strpath, main_sheet_name='main') csvinput.encoding = 'utf16' csvinput.read_sheets() assert list(csvinput.get_main_sheet_lines()) == \ [{'colA': 'éαГ😼𝒞人'}] assert csvinput.sub_sheet_names == []
def test_csv_input(self, tmpdir): main = tmpdir.join('main.csv') main.write('colA,colB\ncell1,cell2\ncell3,cell4') subsheet = tmpdir.join('subsheet.csv') subsheet.write('colC,colD\ncell5,cell6\ncell7,cell8') csvinput = CSVInput(input_name=tmpdir.strpath, main_sheet_name='main') assert csvinput.main_sheet_name == 'main' csvinput.read_sheets() assert list(csvinput.get_main_sheet_lines()) == \ [{'colA': 'cell1', 'colB': 'cell2'}, {'colA': 'cell3', 'colB': 'cell4'}] assert csvinput.sub_sheet_names == ['subsheet'] assert list(csvinput.get_sheet_lines('subsheet')) == \ [{'colC': 'cell5', 'colD': 'cell6'}, {'colC': 'cell7', 'colD': 'cell8'}]