Browse Source

tests: Fix exceptions when running cmdline tests on windows

- subprocess.check_output can only handle strings on windows, not bytes,
  so convert the arguments as such
- the pty module is for posix systems only so skip the tests needing it
  in case it is not available
pull/1417/merge
stijn 9 years ago
committed by Damien George
parent
commit
dbfba6a20e
  1. 9
      tests/run-tests

9
tests/run-tests

@ -37,13 +37,18 @@ def run_micropython(pyb, args, test_file):
with open(test_file, 'rb') as f:
line = f.readline()
if line.startswith(b'# cmdline:'):
args += line[10:].strip().split()
# subprocess.check_output on Windows only accepts strings, not bytes
args += [str(c, 'utf-8') for c in line[10:].strip().split()]
# run the test, possibly with redirected input
try:
if test_file.startswith('cmdline/repl_'):
# Need to use a PTY to test command line editing
import pty
try:
import pty
except ImportError:
# in case pty module is not available, like on Windows
return b'SKIP\n'
import select
def get():

Loading…
Cancel
Save