OpenHands/tests/unit/test_io.py
Robert Brennan 205f0234e8
Rename Conversation to ServerConversation and AppConfig to OpenHandsConfig (#8754)
Co-authored-by: openhands <openhands@all-hands.dev>
2025-05-28 21:48:34 +02:00

28 lines
913 B
Python

from unittest.mock import patch
from openhands.core.config import OpenHandsConfig
from openhands.io import read_input
def test_single_line_input():
"""Test that single line input works when cli_multiline_input is False"""
config = OpenHandsConfig()
config.cli_multiline_input = False
with patch('builtins.input', return_value='hello world'):
result = read_input(config.cli_multiline_input)
assert result == 'hello world'
def test_multiline_input():
"""Test that multiline input works when cli_multiline_input is True"""
config = OpenHandsConfig()
config.cli_multiline_input = True
# Simulate multiple lines of input followed by /exit
mock_inputs = ['line 1', 'line 2', 'line 3', '/exit']
with patch('builtins.input', side_effect=mock_inputs):
result = read_input(config.cli_multiline_input)
assert result == 'line 1\nline 2\nline 3'