mirror of
https://github.com/pre-commit/pre-commit.git
synced 2026-02-17 08:14:42 +04:00
Increase coverage moar
This commit is contained in:
parent
0fec434380
commit
7d4787eced
4 changed files with 14 additions and 8 deletions
|
|
@ -8,11 +8,8 @@ def extend_validator_cls(validator_cls, modify):
|
||||||
validate_properties = validator_cls.VALIDATORS['properties']
|
validate_properties = validator_cls.VALIDATORS['properties']
|
||||||
|
|
||||||
def new_properties(validator, properties, instance, schema):
|
def new_properties(validator, properties, instance, schema):
|
||||||
for error in validate_properties(
|
# Exhaust the validator
|
||||||
validator, properties, instance, schema,
|
list(validate_properties(validator, properties, instance, schema))
|
||||||
):
|
|
||||||
yield error
|
|
||||||
|
|
||||||
modify(properties, instance)
|
modify(properties, instance)
|
||||||
|
|
||||||
return jsonschema.validators.extend(
|
return jsonschema.validators.extend(
|
||||||
|
|
|
||||||
|
|
@ -66,9 +66,9 @@ class PrefixedCommandRunner(object):
|
||||||
proc = self.__popen(replaced_cmd, **popen_kwargs)
|
proc = self.__popen(replaced_cmd, **popen_kwargs)
|
||||||
stdout, stderr = proc.communicate(stdin)
|
stdout, stderr = proc.communicate(stdin)
|
||||||
# TODO: stdout, stderr = from_bytes(stdout), from_bytes(stderr)
|
# TODO: stdout, stderr = from_bytes(stdout), from_bytes(stderr)
|
||||||
if stdout is not None and not isinstance(stdout, five.text):
|
if isinstance(stdout, bytes):
|
||||||
stdout = five.text(stdout, 'utf-8')
|
stdout = five.text(stdout, 'utf-8')
|
||||||
if stderr is not None and not isinstance(stderr, five.text):
|
if isinstance(stderr, bytes):
|
||||||
stderr = five.text(stderr, 'utf-8')
|
stderr = five.text(stderr, 'utf-8')
|
||||||
returncode = proc.returncode
|
returncode = proc.returncode
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,6 @@
|
||||||
|
import jsonschema.exceptions
|
||||||
|
import pytest
|
||||||
|
|
||||||
from pre_commit.jsonschema_extensions import apply_defaults
|
from pre_commit.jsonschema_extensions import apply_defaults
|
||||||
from pre_commit.jsonschema_extensions import remove_defaults
|
from pre_commit.jsonschema_extensions import remove_defaults
|
||||||
|
|
||||||
|
|
@ -78,3 +81,9 @@ def test_remove_defaults_removes_default():
|
||||||
{'properties': {'foo': {'default': 'bar'}}},
|
{'properties': {'foo': {'default': 'bar'}}},
|
||||||
)
|
)
|
||||||
assert ret == {}
|
assert ret == {}
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.parametrize('func', (apply_defaults, remove_defaults))
|
||||||
|
def test_still_validates_schema(func):
|
||||||
|
with pytest.raises(jsonschema.exceptions.ValidationError):
|
||||||
|
func({}, {'properties': {'foo': {}}, 'required': ['foo']})
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@ def test_CalledProcessError_str():
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def popen_mock():
|
def popen_mock():
|
||||||
popen = mock.Mock(spec=subprocess.Popen)
|
popen = mock.Mock(spec=subprocess.Popen)
|
||||||
popen.return_value.communicate.return_value = ('stdout', 'stderr')
|
popen.return_value.communicate.return_value = (b'stdout', b'stderr')
|
||||||
return popen
|
return popen
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue