blob: 913069db71920cccc45a283fb597ac8869ded061 [file] [log] [blame]
import pathlib
import plotly.graph_objects as go
import pytest
from hamilton.plugins.plotly_extensions import PlotlyInteractiveWriter, PlotlyStaticWriter
@pytest.fixture
def figure():
yield go.Figure(data=go.Scatter(x=[1, 2, 3, 4, 5], y=[10, 14, 18, 24, 30], mode="markers"))
def test_plotly_static_writer(figure: go.Figure, tmp_path: pathlib.Path) -> None:
file_path = tmp_path / "figure.png"
writer = PlotlyStaticWriter(path=file_path)
metadata = writer.save_data(figure)
assert file_path.exists()
assert metadata["path"] == file_path
def test_plotly_interactive_writer(figure: go.Figure, tmp_path: pathlib.Path) -> None:
file_path = tmp_path / "figure.html"
writer = PlotlyInteractiveWriter(path=file_path, auto_open=False)
metadata = writer.save_data(figure)
assert file_path.exists()
assert metadata["path"] == file_path