python-by-example-150-chall.../venv/lib/python3.6/site-packages/pandas/tests/plotting/test_backend.py
2019-08-04 15:26:35 +03:00

39 lines
1.1 KiB
Python

import pytest
import pandas
def test_matplotlib_backend_error():
msg = (
"matplotlib is required for plotting when the default backend "
'"matplotlib" is selected.'
)
try:
import matplotlib # noqa
except ImportError:
with pytest.raises(ImportError, match=msg):
pandas.set_option("plotting.backend", "matplotlib")
def test_backend_is_not_module():
msg = (
'"not_an_existing_module" does not seem to be an installed module. '
"A pandas plotting backend must be a module that can be imported"
)
with pytest.raises(ValueError, match=msg):
pandas.set_option("plotting.backend", "not_an_existing_module")
def test_backend_is_correct(monkeypatch):
monkeypatch.setattr(
"pandas.core.config_init.importlib.import_module", lambda name: None
)
pandas.set_option("plotting.backend", "correct_backend")
assert pandas.get_option("plotting.backend") == "correct_backend"
# Restore backend for other tests (matplotlib can be not installed)
try:
pandas.set_option("plotting.backend", "matplotlib")
except ImportError:
pass