21 lines
840 B
Python
21 lines
840 B
Python
from unittest.mock import patch
|
|
from src.markdown_table import parse_tables, render_table, TableBlock
|
|
|
|
def test_render_table_invokes_begin_table(app_instance):
|
|
with patch("src.markdown_table.imgui") as mock_imgui:
|
|
mock_imgui.TableFlags_ = type("T", (), {"borders": 1, "row_bg": 2, "resizable": 4})()
|
|
mock_imgui.begin_table.return_value = True
|
|
block = TableBlock(headers=["A", "B"], rows=[["1", "2"]], span=(0, 3))
|
|
render_table(block)
|
|
assert mock_imgui.begin_table.called
|
|
args, _ = mock_imgui.begin_table.call_args
|
|
assert args[0] == "md_table"
|
|
assert args[1] == 2
|
|
assert mock_imgui.end_table.called
|
|
|
|
def test_render_table_skips_when_no_columns():
|
|
with patch("src.markdown_table.imgui") as mock_imgui:
|
|
block = TableBlock(headers=[], rows=[], span=(0, 1))
|
|
render_table(block)
|
|
assert not mock_imgui.begin_table.called
|