WIP: fixing regressions in tests

This commit is contained in:
2026-05-12 21:04:50 -04:00
parent c0d106255b
commit 29de116233
15 changed files with 236 additions and 44 deletions
+21 -1
View File
@@ -40,7 +40,8 @@ def app_instance():
def test_render_discussion_tabs(app_instance):
"""Verify that _render_discussion_panel uses tabs for discussions."""
with patch('src.gui_2.imgui') as mock_imgui:
with patch('src.gui_2.imgui') as mock_imgui, \
patch('src.gui_2.imscope') as mock_imscope:
# Setup defaults for common imgui calls to avoid unpacking errors
mock_imgui.collapsing_header.return_value = True
mock_imgui.begin_combo.return_value = False
@@ -56,6 +57,15 @@ def test_render_discussion_tabs(app_instance):
mock_imgui.begin_tab_bar.return_value = True
mock_imgui.begin_tab_item.return_value = (False, False)
# Setup imscope mocks
mock_imscope.window.return_value.__enter__.return_value = (True, True)
mock_imscope.child.return_value.__enter__.return_value = True
mock_imscope.table.return_value.__enter__.return_value = True
mock_imscope.tree_node_ex.return_value.__enter__.return_value = True
mock_imscope.tab_item.return_value.__enter__.return_value = (True, True)
mock_imscope.style_color.return_value.__enter__.return_value = None
mock_imscope.style_var.return_value.__enter__.return_value = None
app_instance._render_discussion_panel()
# Check if begin_tab_bar was called
@@ -69,6 +79,7 @@ def test_render_discussion_tabs(app_instance):
def test_switching_discussion_via_tabs(app_instance):
"""Verify that clicking a tab switches the discussion."""
with patch('src.gui_2.imgui') as mock_imgui, \
patch('src.gui_2.imscope') as mock_imscope, \
patch('src.app_controller.AppController._switch_discussion') as mock_switch:
# Setup defaults
mock_imgui.collapsing_header.return_value = True
@@ -83,6 +94,15 @@ def test_switching_discussion_via_tabs(app_instance):
mock_imgui.begin_tab_bar.return_value = True
# Setup imscope mocks
mock_imscope.window.return_value.__enter__.return_value = (True, True)
mock_imscope.child.return_value.__enter__.return_value = True
mock_imscope.table.return_value.__enter__.return_value = True
mock_imscope.tree_node_ex.return_value.__enter__.return_value = True
mock_imscope.tab_item.return_value.__enter__.return_value = (True, True)
mock_imscope.style_color.return_value.__enter__.return_value = None
mock_imscope.style_var.return_value.__enter__.return_value = None
# Simulate 'take_1' being active/selected
def side_effect(name, p_open=None, flags=None):
if name == "Take 1###main_take_1":