test: Added layout and scaling tests for Preset windows and AI Settings
This commit is contained in:
58
tests/test_ai_settings_layout.py
Normal file
58
tests/test_ai_settings_layout.py
Normal file
@@ -0,0 +1,58 @@
|
||||
import pytest
|
||||
import time
|
||||
from src.api_hook_client import ApiHookClient
|
||||
|
||||
@pytest.mark.timeout(30)
|
||||
def test_change_provider_via_hook(live_gui) -> None:
|
||||
"""Verify that we can change the current provider via the API hook."""
|
||||
client = ApiHookClient()
|
||||
if not client.wait_for_server():
|
||||
pytest.fail("Server did not become ready")
|
||||
|
||||
# Change provider to 'anthropic'
|
||||
client.set_value('current_provider', 'anthropic')
|
||||
|
||||
# Wait for state to reflect change
|
||||
success = False
|
||||
state = {}
|
||||
for _ in range(20):
|
||||
state = client.get_gui_state()
|
||||
if state.get('current_provider') == 'anthropic':
|
||||
success = True
|
||||
break
|
||||
time.sleep(0.5)
|
||||
|
||||
assert success, f"Provider did not update. Current state: {state}"
|
||||
|
||||
@pytest.mark.timeout(30)
|
||||
def test_set_params_via_custom_callback(live_gui) -> None:
|
||||
"""Verify we can use custom_callback to set temperature and max_tokens."""
|
||||
client = ApiHookClient()
|
||||
if not client.wait_for_server():
|
||||
pytest.fail("Server did not become ready")
|
||||
|
||||
# Set temperature via custom_callback using _set_attr
|
||||
client.post_gui({
|
||||
"action": "custom_callback",
|
||||
"callback": "_set_attr",
|
||||
"args": ["temperature", 0.85]
|
||||
})
|
||||
|
||||
# Set max_tokens via custom_callback using _set_attr
|
||||
client.post_gui({
|
||||
"action": "custom_callback",
|
||||
"callback": "_set_attr",
|
||||
"args": ["max_tokens", 1024]
|
||||
})
|
||||
|
||||
# Verify via get_gui_state
|
||||
success = False
|
||||
state = {}
|
||||
for _ in range(20):
|
||||
state = client.get_gui_state()
|
||||
if state.get('temperature') == 0.85 and state.get('max_tokens') == 1024:
|
||||
success = True
|
||||
break
|
||||
time.sleep(0.5)
|
||||
|
||||
assert success, f"Params did not update via custom_callback. Got: {state}"
|
||||
Reference in New Issue
Block a user