[U-Boot] [PATCH v2 4/8] test/py: Import StringIO from io module for python 3.x

Paul Burton paul.burton at imgtec.com
Thu Sep 14 21:34:46 UTC 2017


In python 3.x the StringIO module is gone, and instead StringIO can be
imported from the io module. Do this in order to run on python 3.x, and
fall back to importing StringIO as a module in order to continue working
with python 2.x.

Signed-off-by: Paul Burton <paul.burton at imgtec.com>
Reviewed-by: Stephen Warren <swarren at nvidia.com>

---

Changes in v2:
- Try python 3.x style, fall back to python 2.x style rather than the reverse.

 test/py/conftest.py | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/test/py/conftest.py b/test/py/conftest.py
index bf55bd3d13..0d564942d0 100644
--- a/test/py/conftest.py
+++ b/test/py/conftest.py
@@ -20,7 +20,6 @@ import os.path
 import pytest
 from _pytest.runner import runtestprotocol
 import re
-import StringIO
 import sys
 
 try:
@@ -28,6 +27,11 @@ try:
 except:
     import ConfigParser as configparser
 
+try:
+    from io import StringIO
+except ImportError:
+    from StringIO import StringIO
+
 # Globals: The HTML log file, and the connection to the U-Boot console.
 log = None
 console = None
@@ -170,7 +174,7 @@ def pytest_configure(config):
 
         with open(dot_config, 'rt') as f:
             ini_str = '[root]\n' + f.read()
-            ini_sio = StringIO.StringIO(ini_str)
+            ini_sio = StringIO(ini_str)
             parser = configparser.RawConfigParser()
             parser.readfp(ini_sio)
             ubconfig.buildconfig.update(parser.items('root'))
-- 
2.14.1



More information about the U-Boot mailing list