WIP: fixing regressions in tests
This commit is contained in:
@@ -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":
|
||||
|
||||
Reference in New Issue
Block a user