49 lines
1.5 KiB
Python
49 lines
1.5 KiB
Python
import pytest
|
|
from unittest.mock import patch
|
|
from gui_2 import App
|
|
|
|
@pytest.fixture
|
|
def app_instance():
|
|
with (
|
|
patch('gui_2.load_config', return_value={'gui': {'show_windows': {}}}),
|
|
patch('gui_2.save_config'),
|
|
patch('gui_2.project_manager'),
|
|
patch('gui_2.session_logger'),
|
|
patch('gui_2.immapp.run'),
|
|
patch.object(App, '_load_active_project'),
|
|
patch.object(App, '_fetch_models'),
|
|
patch.object(App, '_load_fonts'),
|
|
patch.object(App, '_post_init')
|
|
):
|
|
yield App()
|
|
|
|
def test_gui2_hubs_exist_in_show_windows(app_instance):
|
|
"""
|
|
Verifies that the new consolidated Hub windows are defined in the App's show_windows.
|
|
This ensures they will be available in the 'Windows' menu.
|
|
"""
|
|
expected_hubs = [
|
|
"Context Hub",
|
|
"AI Settings",
|
|
"Discussion Hub",
|
|
"Operations Hub",
|
|
"Files & Media",
|
|
"Theme",
|
|
]
|
|
|
|
for hub in expected_hubs:
|
|
assert hub in app_instance.show_windows, f"Expected hub window '{hub}' not found in show_windows"
|
|
|
|
def test_gui2_old_windows_removed_from_show_windows(app_instance):
|
|
"""
|
|
Verifies that the old fragmented windows are removed from show_windows.
|
|
"""
|
|
old_windows = [
|
|
"Projects", "Files", "Screenshots",
|
|
"Provider", "System Prompts",
|
|
"Message", "Response", "Tool Calls", "Comms History"
|
|
]
|
|
|
|
for old_win in old_windows:
|
|
assert old_win not in app_instance.show_windows, f"Old window '{old_win}' should have been removed from show_windows"
|