diff --git a/tests/test_gui_fast_render.py b/tests/test_gui_fast_render.py new file mode 100644 index 0000000..2c79ed0 --- /dev/null +++ b/tests/test_gui_fast_render.py @@ -0,0 +1,63 @@ +import pytest +from unittest.mock import patch, MagicMock +from src.gui_2 import App + +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: + app_instance._render_context_composition_panel() + 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) + + try: + app_instance._render_discussion_panel() + except Exception as e: + pytest.fail(f"_render_discussion_panel 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: + app_instance._render_files_and_media() + except Exception as e: + pytest.fail(f"_render_files_and_media raised an exception: {e}")