mirror of
https://github.com/certbot/certbot.git
synced 2026-01-26 07:41:33 +03:00
* unchecked_typed_defs everywhere * fix mypy for lock_test * add magic_typing * fix mypy in letshelp * fix validator errors in compat test * fix mypy for test_driver.py * fix mypy in util.py * delint
42 lines
1.5 KiB
Python
42 lines
1.5 KiB
Python
"""Tests for letshelp_certbot.magic_typing."""
|
|
import sys
|
|
import unittest
|
|
|
|
import mock
|
|
|
|
|
|
class MagicTypingTest(unittest.TestCase):
|
|
"""Tests for letshelp_certbot.magic_typing."""
|
|
def test_import_success(self):
|
|
try:
|
|
import typing as temp_typing
|
|
except ImportError: # pragma: no cover
|
|
temp_typing = None # pragma: no cover
|
|
typing_class_mock = mock.MagicMock()
|
|
text_mock = mock.MagicMock()
|
|
typing_class_mock.Text = text_mock
|
|
sys.modules['typing'] = typing_class_mock
|
|
if 'letshelp_certbot.magic_typing' in sys.modules:
|
|
del sys.modules['letshelp_certbot.magic_typing'] # pragma: no cover
|
|
from letshelp_certbot.magic_typing import Text # pylint: disable=no-name-in-module
|
|
self.assertEqual(Text, text_mock)
|
|
del sys.modules['letshelp_certbot.magic_typing']
|
|
sys.modules['typing'] = temp_typing
|
|
|
|
def test_import_failure(self):
|
|
try:
|
|
import typing as temp_typing
|
|
except ImportError: # pragma: no cover
|
|
temp_typing = None # pragma: no cover
|
|
sys.modules['typing'] = None
|
|
if 'letshelp_certbot.magic_typing' in sys.modules:
|
|
del sys.modules['letshelp_certbot.magic_typing'] # pragma: no cover
|
|
from letshelp_certbot.magic_typing import Text # pylint: disable=no-name-in-module
|
|
self.assertTrue(Text is None)
|
|
del sys.modules['letshelp_certbot.magic_typing']
|
|
sys.modules['typing'] = temp_typing
|
|
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main() # pragma: no cover
|