diff --git a/.pylintrc b/.pylintrc index 194a8fe94..05f34fb1f 100644 --- a/.pylintrc +++ b/.pylintrc @@ -48,7 +48,10 @@ ignore=CVS # ignore-list. The regex matches against paths and can be in Posix or Windows # format. Because '\' represents the directory delimiter on Windows systems, it # can't be used as an escape character. -ignore-paths= +# CERTBOT COMMENT +# Changing this line back to the default of `ignore-paths=` is being tracked by +# https://github.com/certbot/certbot/issues/7908. +ignore-paths=.*/_internal/tests/ # Files or directories matching the regular expression patterns are skipped. # The regex matches against base names, not paths. The default value ignores diff --git a/acme/MANIFEST.in b/acme/MANIFEST.in index 089f33a0d..b3badd473 100644 --- a/acme/MANIFEST.in +++ b/acme/MANIFEST.in @@ -3,7 +3,7 @@ include README.rst include pytest.ini recursive-include docs * recursive-include examples * -recursive-include tests * +recursive-include acme/_internal/tests/testdata * include acme/py.typed global-exclude __pycache__ global-exclude *.py[cod] diff --git a/acme/acme/_internal/__init__.py b/acme/acme/_internal/__init__.py new file mode 100644 index 000000000..bc855fd7b --- /dev/null +++ b/acme/acme/_internal/__init__.py @@ -0,0 +1 @@ +"""acme's internal implementation""" diff --git a/acme/acme/_internal/tests/__init__.py b/acme/acme/_internal/tests/__init__.py new file mode 100644 index 000000000..9e17591c4 --- /dev/null +++ b/acme/acme/_internal/tests/__init__.py @@ -0,0 +1 @@ +"""acme tests""" diff --git a/acme/tests/challenges_test.py b/acme/acme/_internal/tests/challenges_test.py similarity index 99% rename from acme/tests/challenges_test.py rename to acme/acme/_internal/tests/challenges_test.py index 1febaff54..98461dc51 100644 --- a/acme/tests/challenges_test.py +++ b/acme/acme/_internal/tests/challenges_test.py @@ -11,7 +11,7 @@ import pytest import requests from acme import errors -import test_util +from acme._internal.tests import test_util CERT = test_util.load_comparable_cert('cert.pem') KEY = jose.JWKRSA(key=test_util.load_rsa_private_key('rsa512_key.pem')) diff --git a/acme/tests/client_test.py b/acme/acme/_internal/tests/client_test.py similarity index 99% rename from acme/tests/client_test.py rename to acme/acme/_internal/tests/client_test.py index 79153a31b..734005b2d 100644 --- a/acme/tests/client_test.py +++ b/acme/acme/_internal/tests/client_test.py @@ -17,10 +17,10 @@ from acme import challenges from acme import errors from acme import jws as acme_jws from acme import messages +from acme._internal.tests import messages_test +from acme._internal.tests import test_util from acme.client import ClientNetwork from acme.client import ClientV2 -import messages_test -import test_util CERT_SAN_PEM = test_util.load_vector('cert-san.pem') CSR_MIXED_PEM = test_util.load_vector('csr-mixed.pem') diff --git a/acme/tests/crypto_util_test.py b/acme/acme/_internal/tests/crypto_util_test.py similarity index 99% rename from acme/tests/crypto_util_test.py rename to acme/acme/_internal/tests/crypto_util_test.py index 409a2ce27..ae1821794 100644 --- a/acme/tests/crypto_util_test.py +++ b/acme/acme/_internal/tests/crypto_util_test.py @@ -14,7 +14,7 @@ import OpenSSL import pytest from acme import errors -import test_util +from acme._internal.tests import test_util class SSLSocketAndProbeSNITest(unittest.TestCase): diff --git a/acme/tests/errors_test.py b/acme/acme/_internal/tests/errors_test.py similarity index 100% rename from acme/tests/errors_test.py rename to acme/acme/_internal/tests/errors_test.py diff --git a/acme/tests/fields_test.py b/acme/acme/_internal/tests/fields_test.py similarity index 100% rename from acme/tests/fields_test.py rename to acme/acme/_internal/tests/fields_test.py diff --git a/acme/tests/jose_test.py b/acme/acme/_internal/tests/jose_test.py similarity index 100% rename from acme/tests/jose_test.py rename to acme/acme/_internal/tests/jose_test.py diff --git a/acme/tests/jws_test.py b/acme/acme/_internal/tests/jws_test.py similarity index 97% rename from acme/tests/jws_test.py rename to acme/acme/_internal/tests/jws_test.py index 901ae970b..016904652 100644 --- a/acme/tests/jws_test.py +++ b/acme/acme/_internal/tests/jws_test.py @@ -5,7 +5,7 @@ import unittest import josepy as jose import pytest -import test_util +from acme._internal.tests import test_util KEY = jose.JWKRSA.load(test_util.load_vector('rsa512_key.pem')) diff --git a/acme/tests/messages_test.py b/acme/acme/_internal/tests/messages_test.py similarity index 99% rename from acme/tests/messages_test.py rename to acme/acme/_internal/tests/messages_test.py index ea7e2feaf..a47541efd 100644 --- a/acme/tests/messages_test.py +++ b/acme/acme/_internal/tests/messages_test.py @@ -10,7 +10,7 @@ import josepy as jose import pytest from acme import challenges -import test_util +from acme._internal.tests import test_util CERT = test_util.load_comparable_cert('cert.der') CSR = test_util.load_comparable_csr('csr.der') diff --git a/acme/tests/standalone_test.py b/acme/acme/_internal/tests/standalone_test.py similarity index 99% rename from acme/tests/standalone_test.py rename to acme/acme/_internal/tests/standalone_test.py index 4fcdceb57..130d8dc7d 100644 --- a/acme/tests/standalone_test.py +++ b/acme/acme/_internal/tests/standalone_test.py @@ -15,7 +15,7 @@ import requests from acme import challenges from acme import crypto_util from acme import errors -import test_util +from acme._internal.tests import test_util class TLSServerTest(unittest.TestCase): diff --git a/acme/tests/test_util.py b/acme/acme/_internal/tests/test_util.py similarity index 100% rename from acme/tests/test_util.py rename to acme/acme/_internal/tests/test_util.py diff --git a/acme/tests/testdata/README b/acme/acme/_internal/tests/testdata/README similarity index 100% rename from acme/tests/testdata/README rename to acme/acme/_internal/tests/testdata/README diff --git a/acme/tests/testdata/cert-100sans.pem b/acme/acme/_internal/tests/testdata/cert-100sans.pem similarity index 100% rename from acme/tests/testdata/cert-100sans.pem rename to acme/acme/_internal/tests/testdata/cert-100sans.pem diff --git a/acme/tests/testdata/cert-idnsans.pem b/acme/acme/_internal/tests/testdata/cert-idnsans.pem similarity index 100% rename from acme/tests/testdata/cert-idnsans.pem rename to acme/acme/_internal/tests/testdata/cert-idnsans.pem diff --git a/acme/tests/testdata/cert-ipsans.pem b/acme/acme/_internal/tests/testdata/cert-ipsans.pem similarity index 100% rename from acme/tests/testdata/cert-ipsans.pem rename to acme/acme/_internal/tests/testdata/cert-ipsans.pem diff --git a/acme/tests/testdata/cert-ipv6sans.pem b/acme/acme/_internal/tests/testdata/cert-ipv6sans.pem similarity index 100% rename from acme/tests/testdata/cert-ipv6sans.pem rename to acme/acme/_internal/tests/testdata/cert-ipv6sans.pem diff --git a/acme/tests/testdata/cert-nocn.der b/acme/acme/_internal/tests/testdata/cert-nocn.der similarity index 100% rename from acme/tests/testdata/cert-nocn.der rename to acme/acme/_internal/tests/testdata/cert-nocn.der diff --git a/acme/tests/testdata/cert-san.pem b/acme/acme/_internal/tests/testdata/cert-san.pem similarity index 100% rename from acme/tests/testdata/cert-san.pem rename to acme/acme/_internal/tests/testdata/cert-san.pem diff --git a/acme/tests/testdata/cert.der b/acme/acme/_internal/tests/testdata/cert.der similarity index 100% rename from acme/tests/testdata/cert.der rename to acme/acme/_internal/tests/testdata/cert.der diff --git a/acme/tests/testdata/cert.pem b/acme/acme/_internal/tests/testdata/cert.pem similarity index 100% rename from acme/tests/testdata/cert.pem rename to acme/acme/_internal/tests/testdata/cert.pem diff --git a/acme/tests/testdata/critical-san.pem b/acme/acme/_internal/tests/testdata/critical-san.pem similarity index 100% rename from acme/tests/testdata/critical-san.pem rename to acme/acme/_internal/tests/testdata/critical-san.pem diff --git a/acme/tests/testdata/csr-100sans.pem b/acme/acme/_internal/tests/testdata/csr-100sans.pem similarity index 100% rename from acme/tests/testdata/csr-100sans.pem rename to acme/acme/_internal/tests/testdata/csr-100sans.pem diff --git a/acme/tests/testdata/csr-6sans.pem b/acme/acme/_internal/tests/testdata/csr-6sans.pem similarity index 100% rename from acme/tests/testdata/csr-6sans.pem rename to acme/acme/_internal/tests/testdata/csr-6sans.pem diff --git a/acme/tests/testdata/csr-idnsans.pem b/acme/acme/_internal/tests/testdata/csr-idnsans.pem similarity index 100% rename from acme/tests/testdata/csr-idnsans.pem rename to acme/acme/_internal/tests/testdata/csr-idnsans.pem diff --git a/acme/tests/testdata/csr-ipsans.pem b/acme/acme/_internal/tests/testdata/csr-ipsans.pem similarity index 100% rename from acme/tests/testdata/csr-ipsans.pem rename to acme/acme/_internal/tests/testdata/csr-ipsans.pem diff --git a/acme/tests/testdata/csr-ipv6sans.pem b/acme/acme/_internal/tests/testdata/csr-ipv6sans.pem similarity index 100% rename from acme/tests/testdata/csr-ipv6sans.pem rename to acme/acme/_internal/tests/testdata/csr-ipv6sans.pem diff --git a/acme/tests/testdata/csr-mixed.pem b/acme/acme/_internal/tests/testdata/csr-mixed.pem similarity index 100% rename from acme/tests/testdata/csr-mixed.pem rename to acme/acme/_internal/tests/testdata/csr-mixed.pem diff --git a/acme/tests/testdata/csr-nosans.pem b/acme/acme/_internal/tests/testdata/csr-nosans.pem similarity index 100% rename from acme/tests/testdata/csr-nosans.pem rename to acme/acme/_internal/tests/testdata/csr-nosans.pem diff --git a/acme/tests/testdata/csr-san.pem b/acme/acme/_internal/tests/testdata/csr-san.pem similarity index 100% rename from acme/tests/testdata/csr-san.pem rename to acme/acme/_internal/tests/testdata/csr-san.pem diff --git a/acme/tests/testdata/csr.der b/acme/acme/_internal/tests/testdata/csr.der similarity index 100% rename from acme/tests/testdata/csr.der rename to acme/acme/_internal/tests/testdata/csr.der diff --git a/acme/tests/testdata/csr.pem b/acme/acme/_internal/tests/testdata/csr.pem similarity index 100% rename from acme/tests/testdata/csr.pem rename to acme/acme/_internal/tests/testdata/csr.pem diff --git a/acme/tests/testdata/dsa512_key.pem b/acme/acme/_internal/tests/testdata/dsa512_key.pem similarity index 100% rename from acme/tests/testdata/dsa512_key.pem rename to acme/acme/_internal/tests/testdata/dsa512_key.pem diff --git a/acme/tests/testdata/ec_secp384r1_key.pem b/acme/acme/_internal/tests/testdata/ec_secp384r1_key.pem similarity index 100% rename from acme/tests/testdata/ec_secp384r1_key.pem rename to acme/acme/_internal/tests/testdata/ec_secp384r1_key.pem diff --git a/acme/tests/testdata/rsa1024_cert.pem b/acme/acme/_internal/tests/testdata/rsa1024_cert.pem similarity index 100% rename from acme/tests/testdata/rsa1024_cert.pem rename to acme/acme/_internal/tests/testdata/rsa1024_cert.pem diff --git a/acme/tests/testdata/rsa1024_key.pem b/acme/acme/_internal/tests/testdata/rsa1024_key.pem similarity index 100% rename from acme/tests/testdata/rsa1024_key.pem rename to acme/acme/_internal/tests/testdata/rsa1024_key.pem diff --git a/acme/tests/testdata/rsa2048_cert.pem b/acme/acme/_internal/tests/testdata/rsa2048_cert.pem similarity index 100% rename from acme/tests/testdata/rsa2048_cert.pem rename to acme/acme/_internal/tests/testdata/rsa2048_cert.pem diff --git a/acme/tests/testdata/rsa2048_key.pem b/acme/acme/_internal/tests/testdata/rsa2048_key.pem similarity index 100% rename from acme/tests/testdata/rsa2048_key.pem rename to acme/acme/_internal/tests/testdata/rsa2048_key.pem diff --git a/acme/tests/testdata/rsa256_key.pem b/acme/acme/_internal/tests/testdata/rsa256_key.pem similarity index 100% rename from acme/tests/testdata/rsa256_key.pem rename to acme/acme/_internal/tests/testdata/rsa256_key.pem diff --git a/acme/tests/testdata/rsa4096_cert.pem b/acme/acme/_internal/tests/testdata/rsa4096_cert.pem similarity index 100% rename from acme/tests/testdata/rsa4096_cert.pem rename to acme/acme/_internal/tests/testdata/rsa4096_cert.pem diff --git a/acme/tests/testdata/rsa4096_key.pem b/acme/acme/_internal/tests/testdata/rsa4096_key.pem similarity index 100% rename from acme/tests/testdata/rsa4096_key.pem rename to acme/acme/_internal/tests/testdata/rsa4096_key.pem diff --git a/acme/tests/testdata/rsa512_key.pem b/acme/acme/_internal/tests/testdata/rsa512_key.pem similarity index 100% rename from acme/tests/testdata/rsa512_key.pem rename to acme/acme/_internal/tests/testdata/rsa512_key.pem diff --git a/acme/tests/util_test.py b/acme/acme/_internal/tests/util_test.py similarity index 100% rename from acme/tests/util_test.py rename to acme/acme/_internal/tests/util_test.py diff --git a/mypy.ini b/mypy.ini index c776dc9a6..6c01929d4 100644 --- a/mypy.ini +++ b/mypy.ini @@ -1,4 +1,7 @@ [mypy] +# Removing this exclude setting is being tracked by +# https://github.com/certbot/certbot/issues/7909. +exclude = .*/_internal/tests/ ignore_missing_imports = True warn_unused_ignores = True show_error_codes = True diff --git a/tox.ini b/tox.ini index 3652205b1..d4502d88c 100644 --- a/tox.ini +++ b/tox.ini @@ -4,7 +4,9 @@ [tox] skipsdist = true -envlist = {cover,lint,mypy}-{win,posix} +# mypy doesn't current pass for us on Windows. Fixing that is being tracked by +# https://github.com/certbot/certbot/issues/7803. +envlist = {cover,lint}-{win,posix},mypy-posix [base] # pip installs the requested packages in editable mode