Improvements to Dectalk driver.
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import os
|
||||
import select
|
||||
import termios
|
||||
import time
|
||||
from unittest.mock import ANY
|
||||
from unittest.mock import Mock
|
||||
@@ -64,7 +65,7 @@ def test_dectalk_driver_speaks_printable_text(serial_pair):
|
||||
speech_driver, master_fd = initialized_driver(dectalkDriver, serial_pair)
|
||||
try:
|
||||
speech_driver.speak("Hello\nworld ☃")
|
||||
assert read_available(master_fd, 13) == b"Hello world \x01"
|
||||
assert read_available(master_fd, 13) == b"Hello world \x0b"
|
||||
finally:
|
||||
speech_driver.shutdown()
|
||||
|
||||
@@ -73,12 +74,22 @@ def test_dectalk_driver_writes_settings_and_cancel(serial_pair):
|
||||
speech_driver, master_fd = initialized_driver(dectalkDriver, serial_pair)
|
||||
try:
|
||||
speech_driver.set_rate(1.0)
|
||||
speech_driver.set_pitch(0.0)
|
||||
speech_driver.set_pitch(1.0)
|
||||
speech_driver.set_volume(0.5)
|
||||
speech_driver.cancel()
|
||||
assert read_available(master_fd, 33) == (
|
||||
b"[:ra 650][:dv ap 50][:vo 50]\x18"
|
||||
)
|
||||
expected = b"[:ra 650][:dv ap 350][:vo 50]\x03"
|
||||
assert read_available(master_fd, len(expected)) == expected
|
||||
finally:
|
||||
speech_driver.shutdown()
|
||||
|
||||
|
||||
def test_dectalk_driver_enables_xon_xoff_flow_control(serial_pair):
|
||||
speech_driver, _ = initialized_driver(dectalkDriver, serial_pair)
|
||||
try:
|
||||
input_flags = termios.tcgetattr(speech_driver.serial_port)[0]
|
||||
assert input_flags & termios.IXON
|
||||
assert not input_flags & termios.IXOFF
|
||||
assert not input_flags & termios.IXANY
|
||||
finally:
|
||||
speech_driver.shutdown()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user