Blob Blame History Raw
From 4cd025415f0ef2c1d72bf4832051971c1e7eef8b Mon Sep 17 00:00:00 2001
From: Athmane Madjoudj <athmane@fedoraproject.org>
Date: Fri, 11 May 2018 19:47:18 +0100
Subject: [PATCH] Make test fallback to system modules when vendorized one are
 not available

---
 tests/_util.py       | 5 ++++-
 tests/concurrency.py | 5 ++++-
 tests/conftest.py    | 6 +++++-
 tests/executor.py    | 5 ++++-
 tests/runners.py     | 5 ++++-
 tests/watchers.py    | 5 ++++-
 6 files changed, 25 insertions(+), 6 deletions(-)

diff --git a/tests/_util.py b/tests/_util.py
index feb53c5b..824ed187 100644
--- a/tests/_util.py
+++ b/tests/_util.py
@@ -7,7 +7,10 @@ except ImportError:
     termios = None
 from contextlib import contextmanager
 
-from invoke.vendor.six import BytesIO, b, wraps
+try:
+    from invoke.vendor.six import BytesIO, b, wraps
+except ImportError:
+    from six import BytesIO, b, wraps
 
 from mock import patch, Mock
 from pytest import skip
diff --git a/tests/concurrency.py b/tests/concurrency.py
index 826c87d3..0dfd30da 100644
--- a/tests/concurrency.py
+++ b/tests/concurrency.py
@@ -1,4 +1,7 @@
-from invoke.vendor.six.moves.queue import Queue
+try:
+    from invoke.vendor.six.moves.queue import Queue
+except ImportError:
+    from six.moves.queue import Queue
 
 from invoke.util import ExceptionWrapper, ExceptionHandlingThread as EHThread
 
diff --git a/tests/conftest.py b/tests/conftest.py
index 9fd39f46..a71bbab2 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -2,7 +2,11 @@ import logging
 import os
 import sys
 
-from invoke.vendor.six import iteritems
+try:
+    from invoke.vendor.six import iteritems
+except ImportError:
+    from six import iteritems
+
 import pytest
 
 from _util import support
diff --git a/tests/executor.py b/tests/executor.py
index 9314b372..5ca5289b 100644
--- a/tests/executor.py
+++ b/tests/executor.py
@@ -30,7 +30,10 @@ class Executor_:
     # TODO: replace with fixture
     def teardown(self):
         import sys
-        from invoke.vendor.six import iteritems
+        try:
+            from invoke.vendor.six import iteritems
+        except ImportError:
+            from six import iteritems
         from _util import support
         # Strip any test-support task collections from sys.modules to prevent
         # state bleed between tests; otherwise tests can incorrectly pass
diff --git a/tests/runners.py b/tests/runners.py
index 75a05509..9af9d03b 100644
--- a/tests/runners.py
+++ b/tests/runners.py
@@ -5,7 +5,10 @@ import types
 from io import BytesIO
 from itertools import chain, repeat
 
-from invoke.vendor.six import StringIO, b, PY2, iteritems
+try:
+    from invoke.vendor.six import StringIO, b, PY2, iteritems
+except ImportError:
+    from six import StringIO, b, PY2, iteritems
 
 from pytest import raises, skip
 from pytest_relaxed import trap
diff --git a/tests/watchers.py b/tests/watchers.py
index 5f252281..6d282494 100644
--- a/tests/watchers.py
+++ b/tests/watchers.py
@@ -1,6 +1,9 @@
 from threading import Thread, Event
 
-from invoke.vendor.six.moves.queue import Queue, Empty
+try:
+    from invoke.vendor.six.moves.queue import Queue, Empty
+except:
+    from six.moves.queue import Queue, Empty
 
 from invoke import Responder, FailingResponder, ResponseNotAccepted
 
-- 
2.17.0