From: Max Reitz <mreitz@redhat.com>
To: qemu-block@nongnu.org
Cc: qemu-devel@nongnu.org, Max Reitz <mreitz@redhat.com>,
Kevin Wolf <kwolf@redhat.com>,
Eduardo Habkost <ehabkost@redhat.com>,
Cleber Rosa <crosa@redhat.com>
Subject: [Qemu-devel] [PATCH v2 8/9] iotests: Modify imports for Python 3
Date: Fri, 19 Oct 2018 21:15:22 +0200 [thread overview]
Message-ID: <20181019191523.12157-9-mreitz@redhat.com> (raw)
In-Reply-To: <20181019191523.12157-1-mreitz@redhat.com>
There are two imports that need to be modified when running the iotests
under Python 3: One is StringIO, which no longer exists; instead, the
StringIO class comes from the io module, so import it from there (and
use the BytesIO class for Python 2). The other is the ConfigParser,
which has just been renamed to configparser.
Signed-off-by: Max Reitz <mreitz@redhat.com>
---
tests/qemu-iotests/iotests.py | 13 +++++++++----
tests/qemu-iotests/nbd-fault-injector.py | 7 +++++--
2 files changed, 14 insertions(+), 6 deletions(-)
diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py
index 7ca94e9278..ed91095505 100644
--- a/tests/qemu-iotests/iotests.py
+++ b/tests/qemu-iotests/iotests.py
@@ -29,6 +29,7 @@ import json
import signal
import logging
import atexit
+import io
sys.path.append(os.path.join(os.path.dirname(__file__), '..', '..', 'scripts'))
import qtest
@@ -681,15 +682,19 @@ def main(supported_fmts=[], supported_oses=['linux'], supported_cache_modes=[],
verify_platform(supported_oses)
verify_cache_mode(supported_cache_modes)
- # We need to filter out the time taken from the output so that qemu-iotest
- # can reliably diff the results against master output.
- import StringIO
if debug:
output = sys.stdout
verbosity = 2
sys.argv.remove('-d')
else:
- output = StringIO.StringIO()
+ # We need to filter out the time taken from the output so that
+ # qemu-iotest can reliably diff the results against master output.
+ if sys.version_info.major >= 3:
+ output = io.StringIO()
+ else:
+ # StringIO() is for unicode strings, which is not what
+ # 2.x's test runner emits.
+ output = io.BytesIO()
logging.basicConfig(level=(logging.DEBUG if debug else logging.WARN))
diff --git a/tests/qemu-iotests/nbd-fault-injector.py b/tests/qemu-iotests/nbd-fault-injector.py
index d45e2e0a6a..6b2d659dee 100755
--- a/tests/qemu-iotests/nbd-fault-injector.py
+++ b/tests/qemu-iotests/nbd-fault-injector.py
@@ -48,7 +48,10 @@ import sys
import socket
import struct
import collections
-import ConfigParser
+if sys.version_info.major >= 3:
+ import configparser
+else:
+ import ConfigParser as configparser
FAKE_DISK_SIZE = 8 * 1024 * 1024 * 1024 # 8 GB
@@ -225,7 +228,7 @@ def parse_config(config):
return rules
def load_rules(filename):
- config = ConfigParser.RawConfigParser()
+ config = configparser.RawConfigParser()
with open(filename, 'rt') as f:
config.readfp(f, filename)
return parse_config(config)
--
2.17.1
next prev parent reply other threads:[~2018-10-19 19:16 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-19 19:15 [Qemu-devel] [PATCH v2 0/9] iotests: Make them work for both Python 2 and 3 Max Reitz
2018-10-19 19:15 ` [Qemu-devel] [PATCH v2 1/9] iotests: Make nbd-fault-injector flush Max Reitz
2018-10-19 19:15 ` [Qemu-devel] [PATCH v2 2/9] iotests: Flush in iotests.py's QemuIoInteractive Max Reitz
2018-10-19 19:15 ` [Qemu-devel] [PATCH v2 3/9] iotests: Use Python byte strings where appropriate Max Reitz
2018-10-19 19:15 ` [Qemu-devel] [PATCH v2 4/9] iotests: Use // for Python integer division Max Reitz
2018-10-19 20:01 ` Eduardo Habkost
2018-10-20 0:19 ` Cleber Rosa
2018-10-19 19:15 ` [Qemu-devel] [PATCH v2 5/9] iotests: Different iterator behavior in Python 3 Max Reitz
2018-10-19 20:01 ` Eduardo Habkost
2018-10-20 0:53 ` Cleber Rosa
2018-10-19 19:15 ` [Qemu-devel] [PATCH v2 6/9] iotests: Explicitly inherit FDs in Python Max Reitz
2018-10-19 20:07 ` Eduardo Habkost
2018-10-20 0:54 ` Cleber Rosa
2018-10-19 19:15 ` [Qemu-devel] [PATCH v2 7/9] iotests: 'new' module replacement in 169 Max Reitz
2018-10-20 0:54 ` Cleber Rosa
2018-10-19 19:15 ` Max Reitz [this message]
2018-10-19 20:11 ` [Qemu-devel] [PATCH v2 8/9] iotests: Modify imports for Python 3 Eduardo Habkost
2018-10-20 0:58 ` Cleber Rosa
2018-10-19 19:15 ` [Qemu-devel] [PATCH v2 9/9] iotests: Unify log outputs between Python 2 and 3 Max Reitz
2018-10-20 0:59 ` Cleber Rosa
2018-10-20 1:00 ` [Qemu-devel] [PATCH v2 0/9] iotests: Make them work for both " Cleber Rosa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20181019191523.12157-9-mreitz@redhat.com \
--to=mreitz@redhat.com \
--cc=crosa@redhat.com \
--cc=ehabkost@redhat.com \
--cc=kwolf@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).