test(prior_session): mock render_palette_modal, add ui_base_system_prompt fixture
This commit is contained in:
@@ -15,6 +15,7 @@ def test_no_extraneous_pop_when_prior_session_renders():
|
||||
app_instance.show_windows = {"Discussion Hub": True, "Log Management": True, "Tool Calls": True, "Message": True, "Operations Hub": True, "Response": True, "Theme": True}
|
||||
app_instance.active_discussion = "main"
|
||||
app_instance.ui_focus_agent = None
|
||||
app_instance.ui_base_system_prompt = ""
|
||||
app_instance._last_ui_focus_agent = None
|
||||
app_instance._comms_log_dirty = True
|
||||
app_instance._tool_log_dirty = True
|
||||
@@ -32,7 +33,11 @@ def test_no_extraneous_pop_when_prior_session_renders():
|
||||
with patch("src.gui_2.imgui") as mock_imgui, \
|
||||
patch("src.gui_2.imscope") as mock_imscope, \
|
||||
patch("src.gui_2.theme") as mock_theme, \
|
||||
patch("src.gui_2.markdown_helper") as mock_md:
|
||||
patch("src.gui_2.markdown_helper") as mock_md, \
|
||||
patch("src.shaders.imgui", new=mock_imgui), \
|
||||
patch("src.imgui_scopes.imgui", new=mock_imgui), \
|
||||
patch("src.theme_2.imgui", new=mock_imgui), \
|
||||
patch("src.command_palette.render_palette_modal"):
|
||||
def _track_push(*a, **k): push_count["n"] += 1
|
||||
def _track_pop(*a, **k): pop_count["n"] += 1
|
||||
mock_imgui.push_style_color.side_effect = _track_push
|
||||
@@ -91,8 +96,8 @@ def test_no_extraneous_pop_when_prior_session_renders():
|
||||
mock_imgui.get_window_height = MagicMock()
|
||||
mock_imgui.get_text_line_height = MagicMock()
|
||||
mock_imgui.get_cursor_screen_pos = MagicMock()
|
||||
mock_imgui.ImVec2 = lambda *a: ("ImVec2", a)
|
||||
mock_imgui.ImVec4 = lambda *a: ("ImVec4", a)
|
||||
mock_imgui.ImVec2 = lambda *a: type("ImVec2", (), {"x": a[0], "y": a[1]})()
|
||||
mock_imgui.ImVec4 = lambda *a: type("ImVec4", (), {"x": a[0], "y": a[1], "z": a[2], "w": a[3]})()
|
||||
mock_imgui.Col_ = MagicMock()
|
||||
mock_imgui.WindowFlags_ = MagicMock()
|
||||
mock_imgui.TableFlags_ = MagicMock()
|
||||
@@ -111,6 +116,7 @@ def test_no_extraneous_pop_when_prior_session_renders():
|
||||
for sc in [mock_imscope.style_color, mock_imscope.style_var, mock_imscope.child, mock_imscope.tab_bar, mock_imscope.tab_item, mock_imscope.tree_node_ex, mock_imscope.group, mock_imscope.indent, mock_imscope.id, mock_imscope.text_wrap, mock_imscope.tooltip, mock_imscope.menu, mock_imscope.menu_bar, mock_imscope.popup, mock_imscope.popup_modal, mock_imscope.window, mock_imscope.table]:
|
||||
sc.return_value.__enter__ = MagicMock(side_effect=_scope_enter)
|
||||
sc.return_value.__exit__ = MagicMock(side_effect=_scope_exit)
|
||||
mock_imscope.popup_modal.return_value.__enter__ = MagicMock(return_value=(True, None))
|
||||
def _push_side_effect(*a, **k): push_count["n"] += 1
|
||||
def _pop_side_effect(*a, **k): pop_count["n"] += 1
|
||||
mock_imscope.style_color.return_value.__enter__.side_effect = _push_side_effect
|
||||
@@ -129,5 +135,5 @@ def test_no_extraneous_pop_when_prior_session_renders():
|
||||
gui_2.render_main_interface(app_instance)
|
||||
except Exception as e:
|
||||
import pytest
|
||||
pytest.fail(f"render_main_interface raised: {e}")
|
||||
pytest.fail("render_main_interface raised: " + type(e).__name__ + ": " + str(e)[:200])
|
||||
assert push_count["n"] == pop_count["n"], f"Push/pop imbalance: pushes={push_count['n']}, pops={pop_count['n']}"
|
||||
|
||||
Reference in New Issue
Block a user