Index: third_party/pexpect/tests/interact.py |
diff --git a/third_party/pexpect/tests/interact.py b/third_party/pexpect/tests/interact.py |
new file mode 100644 |
index 0000000000000000000000000000000000000000..a839e9502f9a7e27d91612e99b108c5ca875e8d5 |
--- /dev/null |
+++ b/third_party/pexpect/tests/interact.py |
@@ -0,0 +1,52 @@ |
+#!/usr/bin/env python |
+''' |
+PEXPECT LICENSE |
+ |
+ This license is approved by the OSI and FSF as GPL-compatible. |
+ http://opensource.org/licenses/isc-license.txt |
+ |
+ Copyright (c) 2012, Noah Spurrier <noah@noah.org> |
+ PERMISSION TO USE, COPY, MODIFY, AND/OR DISTRIBUTE THIS SOFTWARE FOR ANY |
+ PURPOSE WITH OR WITHOUT FEE IS HEREBY GRANTED, PROVIDED THAT THE ABOVE |
+ COPYRIGHT NOTICE AND THIS PERMISSION NOTICE APPEAR IN ALL COPIES. |
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
+ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
+ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
+ ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
+ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
+ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
+ |
+''' |
+try: |
+ # This allows coverage to measure code run in this process |
+ import coverage |
+ coverage.process_startup() |
+except ImportError: |
+ pass |
+ |
+from utils import no_coverage_env |
+import pexpect |
+import sys |
+ |
+ |
+def main(): |
+ p = pexpect.spawn('{sys.executable} getch.py'.format(sys=sys), |
+ env=no_coverage_env()) |
+ |
+ # defaults matches api |
+ escape_character = chr(29) |
+ encoding = None |
+ |
+ if len(sys.argv) > 1 and '--no-escape' in sys.argv: |
+ escape_character = None |
+ |
+ if len(sys.argv) > 1 and '--utf8' in sys.argv: |
+ encoding = 'utf8' |
+ |
+ p.interact(escape_character=escape_character) |
+ |
+ print("Escaped interact") |
+ |
+if __name__ == '__main__': |
+ main() |