Skip to content

Commit

Permalink
Merge pull request #2055 from jakevdp/saver-test
Browse files Browse the repository at this point in the history
TST: use fixture to detect altair_saver
  • Loading branch information
jakevdp committed Mar 31, 2020
2 parents e9bbde0 + c44535a commit 30cca96
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 17 deletions.
16 changes: 7 additions & 9 deletions altair/examples/tests/test_examples.py
Expand Up @@ -7,15 +7,14 @@
from altair import examples


def require_altair_saver(func):
@pytest.fixture
def require_altair_saver_png():
try:
import altair_saver # noqa: F401
except ImportError:
return pytest.mark.skip("altair_saver not importable; cannot run saver tests")(
func
)
else:
return func
pytest.skip("altair_saver not importable; cannot run saver tests")
if "png" not in altair_saver.available_formats('vega-lite'):
pytest.skip("altair_saver not configured to save to png")


def iter_example_filenames():
Expand All @@ -26,7 +25,7 @@ def iter_example_filenames():


@pytest.mark.parametrize('filename', iter_example_filenames())
def test_examples(filename):
def test_examples(filename: str):
source = pkgutil.get_data(examples.__name__, filename)
chart = eval_block(source)

Expand All @@ -36,9 +35,8 @@ def test_examples(filename):
chart.to_dict()


@require_altair_saver
@pytest.mark.parametrize('filename', iter_example_filenames())
def test_render_examples_to_png(filename):
def test_render_examples_to_png(require_altair_saver_png, filename):
source = pkgutil.get_data(examples.__name__, filename)
chart = eval_block(source)
out = io.BytesIO()
Expand Down
12 changes: 4 additions & 8 deletions altair/utils/tests/test_mimebundle.py
Expand Up @@ -4,15 +4,12 @@
from ..mimebundle import spec_to_mimebundle


def require_altair_saver(func):
@pytest.fixture
def require_altair_saver():
try:
import altair_saver # noqa: F401
except ImportError:
return pytest.mark.skip("altair_saver not importable; cannot run saver tests")(
func
)
else:
return func
pytest.skip("altair_saver not importable; cannot run saver tests")


@pytest.fixture
Expand Down Expand Up @@ -156,8 +153,7 @@ def vega_spec():
}


@require_altair_saver
def test_vegalite_to_vega_mimebundle(vegalite_spec, vega_spec):
def test_vegalite_to_vega_mimebundle(require_altair_saver, vegalite_spec, vega_spec):
bundle = spec_to_mimebundle(
spec=vegalite_spec,
format="vega",
Expand Down

0 comments on commit 30cca96

Please sign in to comment.