diff options
author | Chris Johns <chrisj@rtems.org> | 2016-03-09 14:27:42 +1100 |
---|---|---|
committer | Chris Johns <chrisj@rtems.org> | 2016-03-09 14:27:42 +1100 |
commit | 2de37f3432d67e7cbaa1891769cc5ddb9fb24bc3 (patch) | |
tree | 5ecc08ee57a7a7a54f41ee0fa3a2d0efe781f17f | |
parent | tester: Remove the RT version.py and use the toolkit's version. (diff) | |
download | rtems-tools-2de37f3432d67e7cbaa1891769cc5ddb9fb24bc3.tar.bz2 |
Python 2 and python 3 refactor fixes.
Updates #2619.
-rw-r--r-- | rtemstoolkit/config.py | 16 | ||||
-rwxr-xr-x | rtemstoolkit/execute.py | 3 | ||||
-rwxr-xr-x | rtemstoolkit/log.py | 2 | ||||
-rw-r--r-- | rtemstoolkit/macros.py | 1 | ||||
-rw-r--r-- | tester/rt/test.py | 4 |
5 files changed, 17 insertions, 9 deletions
diff --git a/rtemstoolkit/config.py b/rtemstoolkit/config.py index 4b2e8e1..697bcaf 100644 --- a/rtemstoolkit/config.py +++ b/rtemstoolkit/config.py @@ -44,6 +44,10 @@ import os import re import sys +# +# Support to handle use in a package and as a unit test. +# If there is a better way to let us know. +# try: from . import error from . import execute @@ -51,11 +55,11 @@ try: from . import options from . import path except (ValueError, SystemError): - import error - import execute - import log - import options - import path + import error + import execute + import log + import options + import path def _check_bool(value): if value.isdigit(): @@ -849,8 +853,6 @@ def run(): argv = sys.argv, long_opts = long_opts) options.load(opts) - if '_file' not in opts.defaults: - raise error.general('no --file option provided') s = file(opts.defaults['_file'], opts) s.load(opts.defaults['_file']) print(s) diff --git a/rtemstoolkit/execute.py b/rtemstoolkit/execute.py index 982e35f..7c168af 100755 --- a/rtemstoolkit/execute.py +++ b/rtemstoolkit/execute.py @@ -192,7 +192,8 @@ class execute(object): data = fh.read(1) if len(data) == 0: break - if type(data) == bytes: + # str and bytes are the same type in Python2 + if type(data) is not str and type(data) is bytes: data = data.decode(sys.stdout.encoding) for c in data: line += c diff --git a/rtemstoolkit/log.py b/rtemstoolkit/log.py index 61a3b02..4d89b77 100755 --- a/rtemstoolkit/log.py +++ b/rtemstoolkit/log.py @@ -89,7 +89,7 @@ def _output(text = os.linesep, log = None): def stderr(text = os.linesep, log = None): lock.acquire() for l in text.replace(chr(13), '').splitlines(): - print >> sys.stderr, l + print(l, file = sys.stderr) lock.release() def output(text = os.linesep, log = None): diff --git a/rtemstoolkit/macros.py b/rtemstoolkit/macros.py index c92a6c9..2ebc132 100644 --- a/rtemstoolkit/macros.py +++ b/rtemstoolkit/macros.py @@ -188,6 +188,7 @@ class macros: return macro[2] def __setitem__(self, key, value): + key = self._unicode_to_str(key) if type(key) is not str: raise TypeError('bad key type (want str): %s' % (type(key))) if type(value) is not tuple: diff --git a/tester/rt/test.py b/tester/rt/test.py index 3e1bb96..0288822 100644 --- a/tester/rt/test.py +++ b/tester/rt/test.py @@ -99,6 +99,7 @@ class test_run(object): def runner(self): self.start_time = datetime.datetime.now() try: + xx self.test = test(self.index, self.total, self.report, self.executable, self.rtems_tools, self.bsp, self.bsp_config, @@ -120,6 +121,9 @@ class test_run(object): def reraise(self): if self.result is not None: + with_tb = getattr(self.result[1], 'with_traceback', None) + if with_tb: + raise self.result[1].with_traceback(self.result[2]) raise (self.result[0], self.result[1], self.result[2]) def kill(self): |