rdobuilder 7409d8
From 2dc654a20c4f1908d587060809a9d67b31352497 Mon Sep 17 00:00:00 2001
rdobuilder 7409d8
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
rdobuilder 7409d8
Date: Thu, 16 Apr 2020 09:46:39 +0200
rdobuilder 7409d8
Subject: [PATCH] Skip tests requiring invoke if it's not installed
rdobuilder 7409d8
rdobuilder 7409d8
Since invoke is an optional dependency and only one group of tests
rdobuilder 7409d8
require it, skip them gracefully rather than failing if it's not
rdobuilder 7409d8
present.
rdobuilder 7409d8
---
rdobuilder 7409d8
 tests/test_config.py | 7 ++++++-
rdobuilder 7409d8
 1 file changed, 6 insertions(+), 1 deletion(-)
rdobuilder 7409d8
rdobuilder 7409d8
diff --git a/tests/test_config.py b/tests/test_config.py
rdobuilder 7409d8
index 5e9aa0592..2095061f2 100644
rdobuilder 7409d8
--- a/tests/test_config.py
rdobuilder 7409d8
+++ b/tests/test_config.py
rdobuilder 7409d8
@@ -6,7 +6,11 @@
rdobuilder 7409d8
 
rdobuilder 7409d8
 from paramiko.py3compat import string_types
rdobuilder 7409d8
 
rdobuilder 7409d8
-from invoke import Result
rdobuilder 7409d8
+try:
rdobuilder 7409d8
+    from invoke import Result
rdobuilder 7409d8
+except ImportError:
rdobuilder 7409d8
+    Result = None
rdobuilder 7409d8
+
rdobuilder 7409d8
 from mock import patch
rdobuilder 7409d8
 from pytest import raises, mark, fixture
rdobuilder 7409d8
 
rdobuilder 7409d8
@@ -705,6 +709,7 @@ def inner(command, *args, **kwargs):
rdobuilder 7409d8
     return inner
rdobuilder 7409d8
 
rdobuilder 7409d8
 
rdobuilder 7409d8
+@mark.skipif(Result is None, reason="requires invoke package")
rdobuilder 7409d8
 class TestMatchExec(object):
rdobuilder 7409d8
     @patch("paramiko.config.invoke", new=None)
rdobuilder 7409d8
     @patch("paramiko.config.invoke_import_error", new=ImportError("meh"))