diff options
| author | Martin Bielik <martin.bielik@instea.sk> | 2024-12-16 23:13:35 +0100 |
|---|---|---|
| committer | Martin Bielik <martin.bielik@instea.sk> | 2024-12-16 23:13:35 +0100 |
| commit | 2a418adca13bc7f8d4b35a4a1ec83fe0e5aedd91 (patch) | |
| tree | b52d43e7e758e101b972b8de639b3379f669e0a2 /tests/deprecated_role_syntax_test.py | |
| parent | b81a3c7cb4fb15295262e4e6a2896e5bc88c51de (diff) | |
| download | vim-ai-2a418adca13bc7f8d4b35a4a1ec83fe0e5aedd91.tar.gz | |
new role syntax
Diffstat (limited to '')
| -rw-r--r-- | tests/deprecated_role_syntax_test.py | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/tests/deprecated_role_syntax_test.py b/tests/deprecated_role_syntax_test.py new file mode 100644 index 0000000..19744b9 --- /dev/null +++ b/tests/deprecated_role_syntax_test.py @@ -0,0 +1,83 @@ +from context import make_ai_context, make_prompt + +default_config = { + "options": { + "model": "gpt-4o", + "endpoint_url": "https://api.openai.com/v1/chat/completions", + "max_tokens": "0", + "max_completion_tokens": "0", + "temperature": "1", + "request_timeout": "20", + "stream": "1", + "enable_auth": "1", + "token_file_path": "", + "selection_boundary": "", + "initial_prompt": "You are a general assistant.", + }, + "ui": { + "open_chat_command": "preset_below", + "scratch_buffer_keep_open": "0", + "populate_options": "0", + "code_syntax_enabled": "1", + "paste_mode": "1", + }, +} + +def test_role_config(): + context = make_ai_context({ + 'config_default': default_config, + 'config_extension': {}, + 'user_instruction': '/deprecated-test-role-simple user instruction', + 'user_selection': 'selected text', + 'command_type': 'chat', + }) + actual_config = context['config'] + actual_prompt = context['prompt'] + assert 'o1-preview' == actual_config['options']['model'] + assert 'simple role prompt:\nuser instruction:\nselected text' == actual_prompt + +def test_role_config_different_commands(): + base = { + 'config_default': default_config, + 'config_extension': {}, + 'user_instruction': '/deprecated-test-role hello', + 'user_selection': '', + } + context = make_ai_context({ **base, 'command_type': 'chat' }) + actual_config = context['config'] + actual_prompt = context['prompt'] + assert 'model-common' == actual_config['options']['model'] + assert '0' == actual_config['ui']['paste_mode'] + assert 'preset_tab' == actual_config['ui']['open_chat_command'] + assert 'hello' == actual_prompt + assert 'https://localhost/chat' == actual_config['options']['endpoint_url'] + + context = make_ai_context({ **base, 'command_type': 'complete' }) + actual_config = context['config'] + actual_prompt = context['prompt'] + assert 'model-common' == actual_config['options']['model'] + assert '0' == actual_config['ui']['paste_mode'] + assert 'hello' == actual_prompt + assert 'https://localhost/complete' == actual_config['options']['endpoint_url'] + + context = make_ai_context({ **base, 'command_type': 'edit' }) + actual_config = context['config'] + actual_prompt = context['prompt'] + assert 'model-common' == actual_config['options']['model'] + assert '0' == actual_config['ui']['paste_mode'] + assert 'hello' == actual_prompt + assert 'https://localhost/edit' == actual_config['options']['endpoint_url'] + +def test_multiple_role_configs(): + context = make_ai_context({ + 'config_default': default_config, + 'config_extension': {}, + 'user_instruction': '/deprecated-test-role /deprecated-test-role-simple hello', + 'user_selection': '', + 'command_type': 'chat', + }) + actual_config = context['config'] + actual_prompt = context['prompt'] + assert 'o1-preview' == actual_config['options']['model'] + assert 'https://localhost/chat' == actual_config['options']['endpoint_url'] + assert 'simple role prompt:\nhello' == actual_prompt |