| Index: third_party/pexpect/tests/test_FSM.py
|
| diff --git a/third_party/pexpect/tests/test_FSM.py b/third_party/pexpect/tests/test_FSM.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..3425fd2110e370ff711aef440fa7090a8d1febe3
|
| --- /dev/null
|
| +++ b/third_party/pexpect/tests/test_FSM.py
|
| @@ -0,0 +1,34 @@
|
| +import io
|
| +import sys
|
| +import unittest
|
| +try:
|
| + import builtins
|
| +except ImportError:
|
| + import __builtin__ as builtins
|
| +
|
| +PY3 = (sys.version_info[0] >= 3)
|
| +input_name = 'input' if PY3 else 'raw_input'
|
| +
|
| +from pexpect import FSM
|
| +
|
| +class FSMTestCase(unittest.TestCase):
|
| + def test_run_fsm(self):
|
| + def _input(prompt):
|
| + return "167 3 2 2 * * * 1 - ="
|
| + orig_input = getattr(builtins, input_name)
|
| + orig_stdout = sys.stdout
|
| + setattr(builtins, input_name, _input)
|
| + sys.stdout = sio = (io.StringIO if PY3 else io.BytesIO)()
|
| +
|
| + try:
|
| + FSM.main()
|
| + finally:
|
| + setattr(builtins, input_name, orig_input)
|
| + sys.stdout = orig_stdout
|
| +
|
| + printed = sio.getvalue()
|
| + assert '2003' in printed, printed
|
| +
|
| +
|
| +if __name__ == '__main__':
|
| + unittest.main()
|
|
|