Blob Blame History Raw
From 2dc654a20c4f1908d587060809a9d67b31352497 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Thu, 16 Apr 2020 09:46:39 +0200
Subject: [PATCH] Skip tests requiring invoke if it's not installed

Since invoke is an optional dependency and only one group of tests
require it, skip them gracefully rather than failing if it's not
present.
---
 tests/test_config.py | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/tests/test_config.py b/tests/test_config.py
index 5e9aa0592..2095061f2 100644
--- a/tests/test_config.py
+++ b/tests/test_config.py
@@ -6,7 +6,11 @@
 
 from paramiko.py3compat import string_types
 
-from invoke import Result
+try:
+    from invoke import Result
+except ImportError:
+    Result = None
+
 from mock import patch
 from pytest import raises, mark, fixture
 
@@ -705,6 +709,7 @@ def inner(command, *args, **kwargs):
     return inner
 
 
+@mark.skipif(Result is None, reason="requires invoke package")
 class TestMatchExec(object):
     @patch("paramiko.config.invoke", new=None)
     @patch("paramiko.config.invoke_import_error", new=ImportError("meh"))