]>
git.madduck.net Git - etc/vim.git/blobdiff - tests/test_format.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 dataclasses import replace
from dataclasses import replace
-from typing import Any, Iterator
+from typing import Any, Iterator, List
from unittest.mock import patch
import pytest
from unittest.mock import patch
import pytest
+SIMPLE_CASES: List[str] = [
"beginning_backslash",
"bracketmatch",
"class_blank_parentheses",
"beginning_backslash",
"bracketmatch",
"class_blank_parentheses",
-SIMPLE_CASES_PY2 = [
- "numeric_literals_py2",
- "python2",
- "python2_unicode_literals",
-]
-
-EXPERIMENTAL_STRING_PROCESSING_CASES = [
+EXPERIMENTAL_STRING_PROCESSING_CASES: List[str] = [
"cantfit",
"comments7",
"long_strings",
"cantfit",
"comments7",
"long_strings",
+PY310_CASES: List[str] = [
"pattern_matching_simple",
"pattern_matching_complex",
"pattern_matching_extras",
"pattern_matching_style",
"pattern_matching_simple",
"pattern_matching_complex",
"pattern_matching_extras",
"pattern_matching_style",
+ "pattern_matching_generic",
"parenthesized_context_managers",
]
"parenthesized_context_managers",
]
+PREVIEW_CASES: List[str] = []
+
+SOURCES: List[str] = [
"src/black/__init__.py",
"src/black/__main__.py",
"src/black/brackets.py",
"src/black/__init__.py",
"src/black/__main__.py",
"src/black/brackets.py",
assert_format(source, expected, mode, fast=False)
assert_format(source, expected, mode, fast=False)
-@pytest.mark.parametrize("filename", SIMPLE_CASES_PY2)
-@pytest.mark.python2
-def test_simple_format_py2(filename: str) -> None:
- check_file(filename, DEFAULT_MODE)
-
-
@pytest.mark.parametrize("filename", SIMPLE_CASES)
def test_simple_format(filename: str) -> None:
check_file(filename, DEFAULT_MODE)
@pytest.mark.parametrize("filename", SIMPLE_CASES)
def test_simple_format(filename: str) -> None:
check_file(filename, DEFAULT_MODE)
check_file(filename, black.Mode(experimental_string_processing=True))
check_file(filename, black.Mode(experimental_string_processing=True))
+@pytest.mark.parametrize("filename", PREVIEW_CASES)
+def test_preview_format(filename: str) -> None:
+ check_file(filename, black.Mode(preview=True))
+
+
@pytest.mark.parametrize("filename", SOURCES)
def test_source_is_formatted(filename: str) -> None:
path = THIS_DIR.parent / filename
@pytest.mark.parametrize("filename", SOURCES)
def test_source_is_formatted(filename: str) -> None:
path = THIS_DIR.parent / filename
exc_info.match(black.parsing.PY310_HINT)
exc_info.match(black.parsing.PY310_HINT)
+def test_python_2_hint() -> None:
+ with pytest.raises(black.parsing.InvalidInput) as exc_info:
+ assert_format("print 'daylily'", "print 'daylily'")
+ exc_info.match(black.parsing.PY2_HINT)
+
+
def test_docstring_no_string_normalization() -> None:
"""Like test_docstring but with string normalization off."""
source, expected = read_data("docstring_no_string_normalization")
def test_docstring_no_string_normalization() -> None:
"""Like test_docstring but with string normalization off."""
source, expected = read_data("docstring_no_string_normalization")
assert_format(source, expected, mode)
assert_format(source, expected, mode)
-@pytest.mark.python2
-def test_python2_print_function() -> None:
- source, expected = read_data("python2_print_function")
- mode = replace(DEFAULT_MODE, target_versions={black.TargetVersion.PY27})
- assert_format(source, expected, mode)
-
-
def test_stub() -> None:
mode = replace(DEFAULT_MODE, is_pyi=True)
source, expected = read_data("stub.pyi")
def test_stub() -> None:
mode = replace(DEFAULT_MODE, is_pyi=True)
source, expected = read_data("stub.pyi")