Skip to content

Commit f343af7

Browse files
committed
pylint: fixed pylint issues and added some violation exceptions (especially in the tests).
1 parent 419d58b commit f343af7

9 files changed

Lines changed: 49 additions & 40 deletions

File tree

src/filterparams/binding.py

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
# -*- encoding: utf-8 -*-
2+
# pylint: disable=too-many-locals,unnecessary-lambda,undefined-variable
23

34
from funcparserlib.lexer import (
45
make_tokenizer,
@@ -19,27 +20,31 @@
1920
)
2021

2122

22-
def tokenize(str):
23+
def tokenize(to_tokenize_str):
2324
specs = [
2425
('Space', (r'[ \t\r\n]+',)),
2526
('Word', (r'[\w\-\_]+',)),
2627
('Op', (r'[\\(\\)\\|\\!\\&]{1}',)),
2728
]
2829
useless = [u'Space']
29-
t = make_tokenizer(specs)
30-
return [x for x in t(str) if x.type not in useless]
30+
tokenizer = make_tokenizer(specs)
31+
return [
32+
token
33+
for token in tokenizer(to_tokenize_str)
34+
if token.type not in useless
35+
]
3136

3237

3338
def parse(sequence, query):
3439
tokval = lambda x: x.value
3540
toktype = lambda t: (
3641
some(lambda x: x.type == t).named('(type %s)' % t) >> tokval
3742
)
38-
op = lambda s: a(Token('Op', s)) >> tokval
39-
op_ = lambda s: skip(op(s))
43+
operation = lambda s: a(Token('Op', s)) >> tokval
44+
operation_ = lambda s: skip(operation(s))
4045

4146
create_param = lambda param_name: query.get_aliased_param(
42-
param_name
47+
param_name
4348
)
4449
make_and = lambda params: And(params[0], params[1])
4550
make_or = lambda params: Or(params[0], params[1])
@@ -51,12 +56,12 @@ def parse(sequence, query):
5156
right_of_and = forward_decl()
5257
left_of_or = forward_decl()
5358
not_ = forward_decl()
54-
bracket = op_('(') + inner_bracket + op_(')')
55-
and_ = left_of_and + op_('&') + right_of_and >> make_and
56-
or_ = left_of_or + op_('|') + inner_bracket >> make_or
59+
bracket = operation_('(') + inner_bracket + operation_(')')
60+
and_ = left_of_and + operation_('&') + right_of_and >> make_and
61+
or_ = left_of_or + operation_('|') + inner_bracket >> make_or
5762
param = word >> create_param
5863

59-
not_.define(op_('!') + (bracket | param))
64+
not_.define(operation_('!') + (bracket | param))
6065
not_ = not_ >> make_not
6166

6267
left_of_or.define(and_ | bracket | not_ | param)
@@ -69,5 +74,5 @@ def parse(sequence, query):
6974
return definition.parse(sequence)
7075

7176

72-
def loads(s, query):
73-
return parse(tokenize(s), query)
77+
def loads(to_parse_string, query):
78+
return parse(tokenize(to_parse_string), query)

src/filterparams/obj.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@ def __init__(self):
1010

1111
def add(self, name, **kwargs):
1212
return self.add_param(
13-
Parameter(
14-
name=name,
15-
**kwargs
16-
)
13+
Parameter(
14+
name=name,
15+
**kwargs,
16+
)
1717
)
1818

1919
@property
@@ -55,6 +55,7 @@ def __eq__(self, other):
5555
class Order:
5656
def __init__(self, param, direction=None):
5757
self.name = param
58+
self._direction = 'asc'
5859
self.direction = direction
5960

6061
@property

src/filterparams/parser.py

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,18 +21,19 @@
2121
)
2222
ORDER_KEY = 'filter[order]'
2323
ORDER_PARAM_FILTER = re.compile(
24-
r'^(?:'
25-
r'(?P<sort_order>desc|asc)\((?P<order_param>\w+)\)'
26-
r'|'
27-
r'(?P<unsorted_order_param>\w+)'
28-
r')$'
24+
r'^(?:'
25+
r'(?P<sort_order>desc|asc)\((?P<order_param>\w+)\)'
26+
r'|'
27+
r'(?P<unsorted_order_param>\w+)'
28+
r')$'
2929
)
3030
FILTER_BINDING_KEY = 'filter[binding]'
3131

3232

3333
class Parser:
3434

3535
def __init__(self, query_dict, **kwargs):
36+
self._safe_multi_dict = None
3637
self._query_dict = query_dict
3738
self.default_filter = kwargs.get('default_filter')
3839

@@ -108,7 +109,8 @@ def _param_ordering(self, query):
108109
else:
109110
return self._default_param_ordering(query)
110111

111-
def _default_param_ordering(self, query):
112+
@staticmethod
113+
def _default_param_ordering(query):
112114
binding = None
113115
for param in query.params:
114116
if binding is None:

src/filterparams/util.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,13 @@ def flatten(to_flatten_list):
2525

2626

2727
def create_key_value_pairs(dictionary, key):
28-
if hasattr(dictionary, 'getall'):
29-
get_values = lambda key: dictionary.getall(key)
30-
else:
31-
get_values = lambda key: flatten([dictionary.get(key)])
28+
def get_values(key):
29+
if hasattr(dictionary, 'getall'):
30+
data = dictionary.getall(key)
31+
else:
32+
data = [dictionary.get(key)]
33+
return flatten(data)
34+
3235

3336
values = get_values(key)
3437
return zip([key] * len(values), values)
Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1 @@
11
# -*- encoding: utf-8 -*-
2-
"""
3-
"""

test/filterparams_tests/test_binding.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,18 +40,18 @@ def test_unkown_param(self):
4040
self.params = "q2"
4141
self.add_param("q1")
4242
with self.assertRaises(KeyError):
43-
self.parsed_result
43+
self.parsed_result # pylint: disable=pointless-statement
4444

4545
def test_unparsable(self):
4646
self.add_param("q2")
4747
self.params = "q2|"
4848
with self.assertRaises(NoParseError):
49-
self.parsed_result
49+
self.parsed_result # pylint: disable=pointless-statement
5050

5151
def test_unlexable(self):
5252
self.params = "ä1§"
5353
with self.assertRaises(LexerError):
54-
self.parsed_result
54+
self.parsed_result # pylint: disable=pointless-statement
5555

5656
def test_not(self):
5757
self.params = "!q1"

test/filterparams_tests/test_obj.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -85,19 +85,19 @@ def test_not_neq_other_type(self):
8585
"q1"
8686
)
8787

88-
def test_order_direction_set_ascending(self):
88+
def test_order_direction_ascending(self):
8989
self.assertEqual(
9090
Order('name', 'asc').direction,
9191
'asc'
9292
)
9393

94-
def test_order_direction_set_descending(self):
94+
def test_order_direction_descending(self):
9595
self.assertEqual(
9696
Order('name', 'desc').direction,
9797
'desc'
9898
)
9999

100-
def test_order_direction_set_default(self):
100+
def test_order_direction_default(self):
101101
self.assertEqual(
102102
Order('name', None).direction,
103103
'asc'

test/filterparams_tests/test_parser.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ def query(self):
2121

2222
def test_empty_parser(self):
2323
self.assertEqual(
24-
len(self.query.params),
25-
0,
24+
len(self.query.params),
25+
0,
2626
)
2727

2828
def test_param_parse(self):
@@ -49,7 +49,7 @@ def test_single_param_binding_parse(self):
4949
query = self.query
5050
self.assertEqual(query.get_param('name'), query.param_order)
5151

52-
def test_multiple_param_default_binding(self):
52+
def test_multiple_param_default(self):
5353
self._add_param('first_name')
5454
self._add_param('last_name')
5555
query = self.query
@@ -78,7 +78,7 @@ def test_order_application_first(self):
7878
first_order = self.query.orders[0]
7979
self.assertEqual(first_order.name, 'first_name')
8080

81-
def test_order_application_orientation_desc(self):
81+
def test_order_application_desc(self):
8282
self._add_order_test()
8383
first_order = self.query.orders[0]
8484
self.assertEqual(first_order.direction, 'desc')
@@ -95,7 +95,7 @@ def test_order_with_normal_dict(self):
9595
]
9696
self.assertEqual(len(self.query.orders), 2)
9797

98-
def test_order_application_orentation_asc(self):
98+
def test_order_application_asc(self):
9999
self._add_order_test()
100100
second_order = self.query.orders[1]
101101
self.assertEqual(second_order.direction, 'asc')

test/filterparams_tests/test_safe_parser.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ def query(self):
2828
def test_filter_not_present(self):
2929
self._add_param('test', filter='eq')
3030
with self.assertRaises(ValueError):
31-
self.query
31+
self.query # pylint: disable=pointless-statement
3232

3333
def test_filter_present(self):
3434
self.filters.append('eq')

0 commit comments

Comments
 (0)