import pytest from unittest.mock import patch, MagicMock from src.gui_2 import App from src import gui_2 def test_render_context_composition_panel_fast(app_instance: App): """Verifies that the context composition panel rendering path executes without exceptions.""" with patch("src.gui_2.imgui") as mock_imgui, patch("src.gui_2.imscope") as mock_imscope: mock_imgui.begin.return_value = (True, True) mock_imgui.collapsing_header.return_value = True mock_imgui.begin_child.return_value = True mock_imgui.combo.return_value = (True, 0) mock_imgui.checkbox.return_value = (True, True) mock_imgui.input_text.return_value = (True, "") mock_imgui.input_text_multiline.return_value = (True, "") mock_imgui.input_int.return_value = (True, 0) mock_imgui.button.return_value = False mock_imgui.ListClipper.return_value.step.return_value = False mock_imscope.tab_item.return_value.__enter__.return_value = (True, True) try: gui_2.render_context_composition_panel(app_instance) except Exception as e: pytest.fail(f"render_context_composition_panel raised an exception: {e}") def test_render_discussion_panel_fast(app_instance: App): """Verifies that the discussion panel rendering path executes without exceptions.""" with patch("src.gui_2.imgui") as mock_imgui, patch("src.gui_2.imscope") as mock_imscope: mock_imgui.begin.return_value = (True, True) mock_imgui.collapsing_header.return_value = True mock_imgui.begin_child.return_value = True mock_imgui.combo.return_value = (True, 0) mock_imgui.checkbox.return_value = (True, True) mock_imgui.input_text.return_value = (True, "") mock_imgui.input_text_multiline.return_value = (True, "") mock_imgui.input_int.return_value = (True, 0) mock_imgui.button.return_value = False mock_imgui.ListClipper.return_value.step.return_value = False mock_imscope.tab_item.return_value.__enter__.return_value = (True, True) # Mocks for complex imgui logic in render_discussion_tab mock_imgui.is_item_active.return_value = False mock_imgui.begin_tab_bar.return_value = False mock_imgui.begin_tab_item.return_value = (False, False) try: gui_2.render_discussion_hub(app_instance) except Exception as e: pytest.fail(f"render_discussion_hub raised an exception: {e}") def test_render_files_and_media_fast(app_instance: App): """Verifies that the files and media panel rendering path executes without exceptions.""" with patch("src.gui_2.imgui") as mock_imgui, patch("src.gui_2.imscope") as mock_imscope: mock_imgui.begin.return_value = (True, True) mock_imgui.collapsing_header.return_value = True mock_imgui.begin_child.return_value = True mock_imgui.combo.return_value = (True, 0) mock_imgui.checkbox.return_value = (True, True) mock_imgui.input_text.return_value = (True, "") mock_imgui.input_text_multiline.return_value = (True, "") mock_imgui.input_int.return_value = (True, 0) mock_imgui.button.return_value = False mock_imgui.ListClipper.return_value.step.return_value = False mock_imscope.tab_item.return_value.__enter__.return_value = (True, True) try: gui_2.render_files_and_media(app_instance) except Exception as e: pytest.fail(f"render_files_and_media raised an exception: {e}")