Add pre-commit tool to repository, and run on all files

This commit is contained in:
Daniel Gallagher 2018-05-22 10:56:58 -07:00
parent 12d4dab774
commit 9777184721
14 changed files with 96 additions and 35 deletions

17
.pre-commit-config.yaml Normal file
View File

@ -0,0 +1,17 @@
- repo: git://github.com/pre-commit/pre-commit-hooks
sha: v0.8.0
hooks:
- id: autopep8-wrapper
args:
- -i
- --ignore=E128,E309,E501
exclude: ^docs/.*$
- id: check-json
- id: check-yaml
- id: debug-statements
- id: end-of-file-fixer
exclude: ^docs/.*$
- id: trailing-whitespace
- id: pretty-format-json
args:
- --autofix

View File

@ -662,6 +662,8 @@ def __new__(cls, value):
if member.value == value: if member.value == value:
return member return member
raise ValueError("%s is not a valid %s" % (value, cls.__name__)) raise ValueError("%s is not a valid %s" % (value, cls.__name__))
temp_enum_dict['__new__'] = __new__ temp_enum_dict['__new__'] = __new__
del __new__ del __new__
@ -669,12 +671,16 @@ del __new__
def __repr__(self): def __repr__(self):
return "<%s.%s: %r>" % ( return "<%s.%s: %r>" % (
self.__class__.__name__, self._name_, self._value_) self.__class__.__name__, self._name_, self._value_)
temp_enum_dict['__repr__'] = __repr__ temp_enum_dict['__repr__'] = __repr__
del __repr__ del __repr__
def __str__(self): def __str__(self):
return "%s.%s" % (self.__class__.__name__, self._name_) return "%s.%s" % (self.__class__.__name__, self._name_)
temp_enum_dict['__str__'] = __str__ temp_enum_dict['__str__'] = __str__
del __str__ del __str__
@ -705,6 +711,8 @@ def __format__(self, format_spec):
cls = self._member_type_ cls = self._member_type_
val = self.value val = self.value
return cls.__format__(val, format_spec) return cls.__format__(val, format_spec)
temp_enum_dict['__format__'] = __format__ temp_enum_dict['__format__'] = __format__
del __format__ del __format__
@ -751,6 +759,8 @@ def __eq__(self, other):
if isinstance(other, self.__class__): if isinstance(other, self.__class__):
return self is other return self is other
return NotImplemented return NotImplemented
temp_enum_dict['__eq__'] = __eq__ temp_enum_dict['__eq__'] = __eq__
del __eq__ del __eq__
@ -759,18 +769,24 @@ def __ne__(self, other):
if isinstance(other, self.__class__): if isinstance(other, self.__class__):
return self is not other return self is not other
return NotImplemented return NotImplemented
temp_enum_dict['__ne__'] = __ne__ temp_enum_dict['__ne__'] = __ne__
del __ne__ del __ne__
def __hash__(self): def __hash__(self):
return hash(self._name_) return hash(self._name_)
temp_enum_dict['__hash__'] = __hash__ temp_enum_dict['__hash__'] = __hash__
del __hash__ del __hash__
def __reduce_ex__(self, proto): def __reduce_ex__(self, proto):
return self.__class__, (self._value_, ) return self.__class__, (self._value_, )
temp_enum_dict['__reduce_ex__'] = __reduce_ex__ temp_enum_dict['__reduce_ex__'] = __reduce_ex__
del __reduce_ex__ del __reduce_ex__
@ -785,6 +801,8 @@ del __reduce_ex__
@_RouteClassAttributeToGetattr @_RouteClassAttributeToGetattr
def name(self): def name(self):
return self._name_ return self._name_
temp_enum_dict['name'] = name temp_enum_dict['name'] = name
del name del name
@ -792,6 +810,8 @@ del name
@_RouteClassAttributeToGetattr @_RouteClassAttributeToGetattr
def value(self): def value(self):
return self._value_ return self._value_
temp_enum_dict['value'] = value temp_enum_dict['value'] = value
del value del value
@ -817,6 +837,8 @@ def _convert(cls, name, module, filter, source=None):
module_globals.update(cls.__members__) module_globals.update(cls.__members__)
module_globals[name] = cls module_globals[name] = cls
return cls return cls
temp_enum_dict['_convert'] = _convert temp_enum_dict['_convert'] = _convert
del _convert del _convert

View File

@ -730,7 +730,7 @@ class Signature(object):
# Signature object (but let's have this check here # Signature object (but let's have this check here
# to ensure correct behaviour just in case) # to ensure correct behaviour just in case)
raise TypeError('{arg!r} parameter is positional only, ' raise TypeError('{arg!r} parameter is positional only, '
'but was passed as a keyword'. \ 'but was passed as a keyword'.
format(arg=param.name)) format(arg=param.name))
if param.kind == _VAR_KEYWORD: if param.kind == _VAR_KEYWORD:
@ -748,7 +748,7 @@ class Signature(object):
# arguments. # arguments.
if (not partial and param.kind != _VAR_POSITIONAL and if (not partial and param.kind != _VAR_POSITIONAL and
param.default is _empty): param.default is _empty):
raise TypeError('{arg!r} parameter lacking default value'. \ raise TypeError('{arg!r} parameter lacking default value'.
format(arg=param_name)) format(arg=param_name))
else: else:

View File

@ -54,6 +54,7 @@ photo_data = {
class RootQuery(ObjectType): class RootQuery(ObjectType):
node = CustomNode.Field() node = CustomNode.Field()
schema = Schema(query=RootQuery, types=[User, Photo]) schema = Schema(query=RootQuery, types=[User, Photo])

View File

@ -55,6 +55,7 @@ def test_time_query():
assert not result.errors assert not result.errors
assert result.data == {'time': isoformat} assert result.data == {'time': isoformat}
def test_bad_datetime_query(): def test_bad_datetime_query():
not_a_date = "Some string that's not a date" not_a_date = "Some string that's not a date"
@ -64,6 +65,7 @@ def test_bad_datetime_query():
assert isinstance(result.errors[0], GraphQLError) assert isinstance(result.errors[0], GraphQLError)
assert result.data == None assert result.data == None
def test_bad_date_query(): def test_bad_date_query():
not_a_date = "Some string that's not a date" not_a_date = "Some string that's not a date"
@ -73,6 +75,7 @@ def test_bad_date_query():
assert isinstance(result.errors[0], GraphQLError) assert isinstance(result.errors[0], GraphQLError)
assert result.data == None assert result.data == None
def test_bad_time_query(): def test_bad_time_query():
not_a_date = "Some string that's not a date" not_a_date = "Some string that's not a date"
@ -82,6 +85,7 @@ def test_bad_time_query():
assert isinstance(result.errors[0], GraphQLError) assert isinstance(result.errors[0], GraphQLError)
assert result.data == None assert result.data == None
def test_datetime_query_variable(): def test_datetime_query_variable():
now = datetime.datetime.now().replace(tzinfo=pytz.utc) now = datetime.datetime.now().replace(tzinfo=pytz.utc)
isoformat = now.isoformat() isoformat = now.isoformat()

View File

@ -10,6 +10,7 @@ class Query(ObjectType):
def resolve_json(self, info, input): def resolve_json(self, info, input):
return input return input
schema = Schema(query=Query) schema = Schema(query=Query)

View File

@ -9,6 +9,7 @@ class Query(ObjectType):
def resolve_uuid(self, info, input): def resolve_uuid(self, info, input):
return input return input
schema = Schema(query=Query) schema = Schema(query=Query)

View File

@ -1,9 +1,11 @@
import pytest import pytest
from ..annotate import annotate from ..annotate import annotate
def func(a, b, *c, **d): def func(a, b, *c, **d):
pass pass
annotations = { annotations = {
'a': int, 'a': int,
'b': str, 'b': str,
@ -11,8 +13,11 @@ annotations = {
'd': dict 'd': dict
} }
def func_with_annotations(a, b, *c, **d): def func_with_annotations(a, b, *c, **d):
pass pass
func_with_annotations.__annotations__ = annotations func_with_annotations.__annotations__ = annotations

View File

@ -4,6 +4,7 @@ from .. import deprecated
def test_resolve_only_args(mocker): def test_resolve_only_args(mocker):
mocker.patch.object(deprecated, 'warn_deprecation') mocker.patch.object(deprecated, 'warn_deprecation')
def resolver(root, **args): def resolver(root, **args):
return root, args return root, args

11
tox.ini
View File

@ -1,5 +1,5 @@
[tox] [tox]
envlist = flake8,py27,py33,py34,py35,py36,pypy envlist = flake8,py27,py33,py34,py35,py36,pre-commit,pypy
skipsdist = true skipsdist = true
[testenv] [testenv]
@ -20,6 +20,15 @@ setenv =
commands= commands=
py.test py.test
[testenv:pre-commit]
basepython=python3.6
deps =
pre-commit>0.12.0
setenv =
LC_CTYPE=en_US.UTF-8
commands =
pre-commit {posargs:run --all-files}
[testenv:flake8] [testenv:flake8]
deps = flake8 deps = flake8
commands = commands =