X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/e401b6bb1e1c0ed534bba59d9dc908caf7ba898c..436e12f2904e68acb57a059b1c44f1e0321e2d3f:/tests/test_blackd.py diff --git a/tests/test_blackd.py b/tests/test_blackd.py index 37431fc..75d7567 100644 --- a/tests/test_blackd.py +++ b/tests/test_blackd.py @@ -1,4 +1,5 @@ import re +from typing import Any from unittest.mock import patch from click.testing import CliRunner @@ -8,12 +9,18 @@ from tests.util import read_data, DETERMINISTIC_HEADER try: import blackd - from aiohttp.test_utils import AioHTTPTestCase, unittest_run_loop + from aiohttp.test_utils import AioHTTPTestCase from aiohttp import web +except ImportError as e: + raise RuntimeError("Please install Black with the 'd' extra") from e + +try: + from aiohttp.test_utils import unittest_run_loop except ImportError: - has_blackd_deps = False -else: - has_blackd_deps = True + # unittest_run_loop is unnecessary and a no-op since aiohttp 3.8, and aiohttp 4 + # removed it. To maintain compatibility we can make our own no-op decorator. + def unittest_run_loop(func: Any, *args: Any, **kwargs: Any) -> Any: + return func @pytest.mark.blackd @@ -88,7 +95,7 @@ class BlackDTestCase(AioHTTPTestCase): @unittest_run_loop async def test_blackd_pyi(self) -> None: - source, expected = read_data("stub.pyi") + source, expected = read_data("miscellaneous", "stub.pyi") response = await self.client.post( "/", data=source, headers={blackd.PYTHON_VARIANT_HEADER: "pyi"} ) @@ -101,8 +108,8 @@ class BlackDTestCase(AioHTTPTestCase): r"(In|Out)\t\d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d\.\d\d\d\d\d\d \+\d\d\d\d" ) - source, _ = read_data("blackd_diff.py") - expected, _ = read_data("blackd_diff.diff") + source, _ = read_data("miscellaneous", "blackd_diff") + expected, _ = read_data("miscellaneous", "blackd_diff.diff") response = await self.client.post( "/", data=source, headers={blackd.DIFF_HEADER: "true"}