]>
git.madduck.net Git - etc/vim.git/blobdiff - tests/test_black.py
madduck's git repository
Every one of the projects in this repository is available at the canonical
URL git://git.madduck.net/madduck/pub/<projectpath> — see
each project's metadata for the exact URL.
All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@ git. madduck. net .
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
SSH access, as well as push access can be individually
arranged .
If you use my repositories frequently, consider adding the following
snippet to ~/.gitconfig and using the third clone URL listed for each
project:
[url "git://git.madduck.net/madduck/"]
insteadOf = madduck:
from io import BytesIO, TextIOWrapper
import os
from pathlib import Path
from io import BytesIO, TextIOWrapper
import os
from pathlib import Path
import sys
from tempfile import TemporaryDirectory
from typing import Any, BinaryIO, Generator, List, Tuple, Iterator, TypeVar
import sys
from tempfile import TemporaryDirectory
from typing import Any, BinaryIO, Generator, List, Tuple, Iterator, TypeVar
if exc.__class__.__name__ == e:
unittest.skip(f"Encountered expected exception {exc}, skipping")
else:
if exc.__class__.__name__ == e:
unittest.skip(f"Encountered expected exception {exc}, skipping")
else:
class BlackRunner(CliRunner):
class BlackRunner(CliRunner):
just_nl = "\n"
with self.assertRaises(black.NothingChanged):
black.format_file_contents(just_nl, mode=mode, fast=False)
just_nl = "\n"
with self.assertRaises(black.NothingChanged):
black.format_file_contents(just_nl, mode=mode, fast=False)
- same = "l = [1, 2, 3]\n"
+ same = "j = [1, 2, 3]\n"
with self.assertRaises(black.NothingChanged):
black.format_file_contents(same, mode=mode, fast=False)
with self.assertRaises(black.NothingChanged):
black.format_file_contents(same, mode=mode, fast=False)
- different = "l = [1,2,3]"
+ different = "j = [1,2,3]"
expected = same
actual = black.format_file_contents(different, mode=mode, fast=False)
self.assertEqual(expected, actual)
expected = same
actual = black.format_file_contents(different, mode=mode, fast=False)
self.assertEqual(expected, actual)
with patch("black.out", out), patch("black.err", err):
with self.assertRaises(AssertionError):
with patch("black.out", out), patch("black.err", err):
with self.assertRaises(AssertionError):
- self.assertFormatEqual("l = [1, 2, 3]", "l = [1, 2, 3,]")
+ self.assertFormatEqual("j = [1, 2, 3]", "j = [1, 2, 3,]")
out_str = "".join(out_lines)
self.assertTrue("Expected tree:" in out_str)
out_str = "".join(out_lines)
self.assertTrue("Expected tree:" in out_str)
two = black.read_cache(short_mode)
self.assertNotIn(path, two)
two = black.read_cache(short_mode)
self.assertNotIn(path, two)
+ def test_tricky_unicode_symbols(self) -> None:
+ source, expected = read_data("tricky_unicode_symbols")
+ actual = fs(source)
+ self.assertFormatEqual(expected, actual)
+ black.assert_equivalent(source, actual)
+ black.assert_stable(source, actual, black.FileMode())
+
def test_single_file_force_pyi(self) -> None:
reg_mode = black.FileMode()
pyi_mode = black.FileMode(is_pyi=True)
def test_single_file_force_pyi(self) -> None:
reg_mode = black.FileMode()
pyi_mode = black.FileMode(is_pyi=True)
@unittest_run_loop
async def test_blackd_unsupported_version(self) -> None:
response = await self.client.post(
@unittest_run_loop
async def test_blackd_unsupported_version(self) -> None:
response = await self.client.post(
- "/", data=b"what", headers={blackd.VERSION_HEADER: "2"}
+ "/", data=b"what", headers={blackd.PROTOCOL_ VERSION_HEADER: "2"}
)
self.assertEqual(response.status, 501)
)
self.assertEqual(response.status, 501)
@unittest_run_loop
async def test_blackd_supported_version(self) -> None:
response = await self.client.post(
@unittest_run_loop
async def test_blackd_supported_version(self) -> None:
response = await self.client.post(
- "/", data=b"what", headers={blackd.VERSION_HEADER: "1"}
+ "/", data=b"what", headers={blackd.PROTOCOL_ VERSION_HEADER: "1"}
)
self.assertEqual(response.status, 200)
)
self.assertEqual(response.status, 200)
response = await self.client.post(
"/", data=code, headers={blackd.PYTHON_VARIANT_HEADER: header_value}
)
response = await self.client.post(
"/", data=code, headers={blackd.PYTHON_VARIANT_HEADER: header_value}
)
- self.assertEqual(response.status, expected_status)
+ self.assertEqual(
+ response.status, expected_status, msg=await response.text()
+ )
await check("3.6", 200)
await check("py3.6", 200)
await check("3.6,3.7", 200)
await check("3.6,py3.7", 200)
await check("3.6", 200)
await check("py3.6", 200)
await check("3.6,3.7", 200)
await check("3.6,py3.7", 200)
+ await check("py36,py37", 200)
+ await check("36", 200)
+ await check("3.6.4", 200)
await check("2", 204)
await check("2.7", 204)
await check("py2.7", 204)
await check("3.4", 204)
await check("py3.4", 204)
await check("2", 204)
await check("2.7", 204)
await check("py2.7", 204)
await check("3.4", 204)
await check("py3.4", 204)
+ await check("py34,py36", 204)
+ await check("34", 204)
@skip_if_exception("ClientOSError")
@unittest.skipUnless(has_blackd_deps, "blackd's dependencies are not installed")
@skip_if_exception("ClientOSError")
@unittest.skipUnless(has_blackd_deps, "blackd's dependencies are not installed")
)
self.assertEqual(response.status, 400)
)
self.assertEqual(response.status, 400)
+ @skip_if_exception("ClientOSError")
+ @unittest.skipUnless(has_blackd_deps, "blackd's dependencies are not installed")
+ @unittest_run_loop
+ async def test_blackd_response_black_version_header(self) -> None:
+ response = await self.client.post("/")
+ self.assertIsNotNone(response.headers.get(blackd.BLACK_VERSION_HEADER))
+
if __name__ == "__main__":
unittest.main(module="test_black")
if __name__ == "__main__":
unittest.main(module="test_black")