From 7d819c13a777311bb29848e06b5c88132689e258 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Torsten=20W=C3=B6rtwein?= Date: Wed, 30 Sep 2020 01:47:05 -0400 Subject: [PATCH] TST: honor encoding in read_fwf for memory-mapped files --- pandas/tests/io/parser/test_read_fwf.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/pandas/tests/io/parser/test_read_fwf.py b/pandas/tests/io/parser/test_read_fwf.py index 13519154f82b8..d45317aaa3458 100644 --- a/pandas/tests/io/parser/test_read_fwf.py +++ b/pandas/tests/io/parser/test_read_fwf.py @@ -634,3 +634,24 @@ def test_binary_mode(): df = pd.read_fwf(file) file.seek(0) tm.assert_frame_equal(df, df_reference) + + +@pytest.mark.parametrize("memory_map", [True, False]) +def test_encoding_mmap(memory_map): + """ + encoding should be working, even when using a memory-mapped file. + + GH 23254. + """ + encoding = "iso8859_1" + data = BytesIO(" 1 A Ä 2\n".encode(encoding)) + df = pd.read_fwf( + data, + header=None, + widths=[2, 2, 2, 2], + encoding=encoding, + memory_map=memory_map, + ) + data.seek(0) + df_reference = pd.DataFrame([[1, "A", "Ä", 2]]) + tm.assert_frame_equal(df, df_reference)