From 5da64bab7add1a9e5210175447a0c6a112dfdc14 Mon Sep 17 00:00:00 2001 From: ladyyvii Date: Wed, 2 Oct 2019 15:54:21 +0100 Subject: [PATCH 1/4] replace None engine tests for read_excel --- pandas/tests/io/excel/test_readers.py | 29 +++++++++++++++++---------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/pandas/tests/io/excel/test_readers.py b/pandas/tests/io/excel/test_readers.py index 5326f2df68972..eb637f821aafa 100644 --- a/pandas/tests/io/excel/test_readers.py +++ b/pandas/tests/io/excel/test_readers.py @@ -50,13 +50,6 @@ def ignore_xlrd_time_clock_warning(): pytest.mark.filterwarnings("ignore:.*html argument"), ], ), - pytest.param( - None, - marks=[ - td.skip_if_no("xlrd"), - pytest.mark.filterwarnings("ignore:.*(tree\\.iter|html argument)"), - ], - ), pytest.param("odf", marks=td.skip_if_no("odf")), ] ) @@ -67,6 +60,24 @@ def engine(request): return request.param +@pytest.mark.parametrize("kwargs", [dict(), dict(engine=None)]) +def test_default_engine(datapath, monkeypatch, kwargs): + """ + A test for default ExcelFile engine value (which is None) and a bad engine value + """ + monkeypatch.chdir(datapath("io", "data")) + expected = "xlrd" + + result = pd.ExcelFile("blank.xls", **kwargs) + assert result.engine == expected + + +def test_bad_engine_raises(): + bad_engine = "foo" + with pytest.raises(ValueError, match="Unknown engine: foo"): + pd.read_excel("", engine=bad_engine) + + class TestReaders: @pytest.fixture(autouse=True) def cd_and_set_engine(self, engine, datapath, monkeypatch, read_ext): @@ -492,10 +503,6 @@ def test_excel_read_buffer(self, read_ext): actual = pd.read_excel(f, "Sheet1", index_col=0) tm.assert_frame_equal(expected, actual) - def test_bad_engine_raises(self, read_ext): - bad_engine = "foo" - with pytest.raises(ValueError, match="Unknown engine: foo"): - pd.read_excel("", engine=bad_engine) @tm.network def test_read_from_http_url(self, read_ext): From 93d84cbb50016b2587919ccfefb1bac879736223 Mon Sep 17 00:00:00 2001 From: ladyyvii Date: Wed, 2 Oct 2019 16:03:47 +0100 Subject: [PATCH 2/4] docstring fix --- pandas/tests/io/excel/test_readers.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pandas/tests/io/excel/test_readers.py b/pandas/tests/io/excel/test_readers.py index eb637f821aafa..f719ed53efbe2 100644 --- a/pandas/tests/io/excel/test_readers.py +++ b/pandas/tests/io/excel/test_readers.py @@ -63,7 +63,7 @@ def engine(request): @pytest.mark.parametrize("kwargs", [dict(), dict(engine=None)]) def test_default_engine(datapath, monkeypatch, kwargs): """ - A test for default ExcelFile engine value (which is None) and a bad engine value + A test for default ExcelFile engine value (which is None) """ monkeypatch.chdir(datapath("io", "data")) expected = "xlrd" @@ -503,7 +503,6 @@ def test_excel_read_buffer(self, read_ext): actual = pd.read_excel(f, "Sheet1", index_col=0) tm.assert_frame_equal(expected, actual) - @tm.network def test_read_from_http_url(self, read_ext): if read_ext == ".ods": # TODO: remove once on master From cdc5f12a63ef63546e3d2ba601bc8891641fbe57 Mon Sep 17 00:00:00 2001 From: ladyyvii Date: Wed, 2 Oct 2019 17:25:25 +0100 Subject: [PATCH 3/4] addressed PR comments and added skip_if_no decorator --- pandas/tests/io/excel/test_readers.py | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/pandas/tests/io/excel/test_readers.py b/pandas/tests/io/excel/test_readers.py index f719ed53efbe2..f4e0adab8ae6c 100644 --- a/pandas/tests/io/excel/test_readers.py +++ b/pandas/tests/io/excel/test_readers.py @@ -60,15 +60,12 @@ def engine(request): return request.param -@pytest.mark.parametrize("kwargs", [dict(), dict(engine=None)]) -def test_default_engine(datapath, monkeypatch, kwargs): - """ - A test for default ExcelFile engine value (which is None) - """ +@td.skip_if_no("xlrd") +def test_default_engine(datapath, monkeypatch): monkeypatch.chdir(datapath("io", "data")) expected = "xlrd" - result = pd.ExcelFile("blank.xls", **kwargs) + result = pd.ExcelFile("blank.xls") assert result.engine == expected From c42d2f33b77645eacbe0dbeebd7c474f77d8f7a4 Mon Sep 17 00:00:00 2001 From: ladyyvii Date: Wed, 2 Oct 2019 17:37:06 +0100 Subject: [PATCH 4/4] added filterwarnings decorator --- pandas/tests/io/excel/test_readers.py | 1 + 1 file changed, 1 insertion(+) diff --git a/pandas/tests/io/excel/test_readers.py b/pandas/tests/io/excel/test_readers.py index f4e0adab8ae6c..0bd2279df5529 100644 --- a/pandas/tests/io/excel/test_readers.py +++ b/pandas/tests/io/excel/test_readers.py @@ -60,6 +60,7 @@ def engine(request): return request.param +@pytest.mark.filterwarnings("ignore:.*(tree\\.iter|html argument)") @td.skip_if_no("xlrd") def test_default_engine(datapath, monkeypatch): monkeypatch.chdir(datapath("io", "data"))