From 935507cc60b6f0b2b83c9c0e3be3900297b41757 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Tue, 17 May 2022 07:26:36 +0200 Subject: [PATCH] Replace pytest-relaxed with plain pytest.raises There is really no technical reason to bring pytest-relaxed to call @raises as a decorator while plain pytest works just fine. Plus, pytest.raises() is used in test_sftp already. pytest-relaxed causes humongous breakage to other packages on the system. It has been banned from Gentoo for this reason. --- dev-requirements.txt | 1 - pytest.ini | 3 --- tests/test_client.py | 19 +++++++++---------- 3 files changed, 9 insertions(+), 14 deletions(-) diff --git a/dev-requirements.txt b/dev-requirements.txt index 3ed9eb40..e90f3373 100644 --- a/dev-requirements.txt +++ b/dev-requirements.txt @@ -2,7 +2,6 @@ invoke==1.6.0 invocations==2.6.0 pytest==4.4.2 -pytest-relaxed==1.1.5 # pytest-xdist for test dir watching and the inv guard task pytest-xdist==1.28.0 mock==2.0.0 diff --git a/pytest.ini b/pytest.ini index be207cd8..5a506bcd 100644 --- a/pytest.ini +++ b/pytest.ini @@ -1,7 +1,4 @@ [pytest] -# We use pytest-relaxed just for its utils at the moment, so disable it at the -# plugin level until we adapt test organization to really use it. -addopts = -p no:relaxed # Loop on failure looponfailroots = tests paramiko # Ignore some warnings we cannot easily handle. diff --git a/tests/test_client.py b/tests/test_client.py index 3eaad4fb..66c41b0b 100644 --- a/tests/test_client.py +++ b/tests/test_client.py @@ -34,7 +34,6 @@ import weakref from tempfile import mkstemp import pytest -from pytest_relaxed import raises from mock import patch, Mock import paramiko @@ -787,11 +786,11 @@ class PasswordPassphraseTests(ClientTest): # TODO: more granular exception pending #387; should be signaling "no auth # methods available" because no key and no password - @raises(SSHException) @requires_sha1_signing def test_passphrase_kwarg_not_used_for_password_auth(self): - # Using the "right" password in the "wrong" field shouldn't work. - self._test_connection(passphrase="pygmalion") + with pytest.raises(SSHException): + # Using the "right" password in the "wrong" field shouldn't work. + self._test_connection(passphrase="pygmalion") @requires_sha1_signing def test_passphrase_kwarg_used_for_key_passphrase(self): @@ -811,15 +810,15 @@ class PasswordPassphraseTests(ClientTest): password="television", ) - @raises(AuthenticationException) # TODO: more granular @requires_sha1_signing def test_password_kwarg_not_used_for_passphrase_when_passphrase_kwarg_given( # noqa self ): # Sanity: if we're given both fields, the password field is NOT used as # a passphrase. - self._test_connection( - key_filename=_support("test_rsa_password.key"), - password="television", - passphrase="wat? lol no", - ) + with pytest.raises(AuthenticationException): + self._test_connection( + key_filename=_support("test_rsa_password.key"), + password="television", + passphrase="wat? lol no", + ) -- 2.38.1