mirror of
https://github.com/aykhans/AzSuicideDataVisualization.git
synced 2025-04-22 10:28:02 +00:00
53 lines
1.4 KiB
Python
53 lines
1.4 KiB
Python
import pytest
|
|
|
|
from ..html import spec_to_html
|
|
|
|
|
|
@pytest.fixture
|
|
def spec():
|
|
return {
|
|
"data": {"url": "data.json"},
|
|
"mark": "point",
|
|
"encoding": {
|
|
"x": {"field": "x", "type": "quantitative"},
|
|
"y": {"field": "y", "type": "quantitative"},
|
|
},
|
|
}
|
|
|
|
|
|
@pytest.mark.parametrize("requirejs", [True, False])
|
|
@pytest.mark.parametrize("fullhtml", [True, False])
|
|
def test_spec_to_html(requirejs, fullhtml, spec):
|
|
# We can't test that the html actually renders, but we'll test aspects of
|
|
# it to make certain that the keywords are respected.
|
|
vegaembed_version = ("3.12",)
|
|
vegalite_version = ("3.0",)
|
|
vega_version = "4.0"
|
|
|
|
html = spec_to_html(
|
|
spec,
|
|
mode="vega-lite",
|
|
requirejs=requirejs,
|
|
fullhtml=fullhtml,
|
|
vegalite_version=vegalite_version,
|
|
vegaembed_version=vegaembed_version,
|
|
vega_version=vega_version,
|
|
)
|
|
html = html.strip()
|
|
|
|
if fullhtml:
|
|
assert html.startswith("<!DOCTYPE html>")
|
|
assert html.endswith("</html>")
|
|
else:
|
|
assert html.startswith("<style>")
|
|
assert html.endswith("</script>")
|
|
|
|
if requirejs:
|
|
assert "require(" in html
|
|
else:
|
|
assert "require(" not in html
|
|
|
|
assert "vega-lite@{}".format(vegalite_version) in html
|
|
assert "vega@{}".format(vega_version) in html
|
|
assert "vega-embed@{}".format(vegaembed_version) in html
|