27 lines
759 B
Python
27 lines
759 B
Python
import unittest
|
|
|
|
from agentos.input_source import TextInputSource
|
|
|
|
|
|
class TextInputSourceTests(unittest.TestCase):
|
|
def test_skips_blank_input_and_returns_trimmed_transcript(self) -> None:
|
|
values = iter([" ", " 中文输入 "])
|
|
source = TextInputSource(reader=lambda _prompt: next(values))
|
|
|
|
event = source.read()
|
|
|
|
self.assertIsNotNone(event)
|
|
assert event is not None
|
|
self.assertEqual(event.text, "中文输入")
|
|
self.assertEqual(event.source, "simulated_speech")
|
|
|
|
def test_eof_stops_input(self) -> None:
|
|
def end_input(_prompt: str) -> str:
|
|
raise EOFError
|
|
|
|
self.assertIsNone(TextInputSource(reader=end_input).read())
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|