]> Cypherpunks.ru repositories - pyderasn.git/commitdiff
More linter satisfaction
authorSergey Matveev <stargrave@stargrave.org>
Thu, 23 Jan 2020 13:33:23 +0000 (16:33 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Thu, 23 Jan 2020 15:55:30 +0000 (18:55 +0300)
pyderasn.py
tests/test_pyderasn.py

index 0b04f4eda76be9921b6de95d90e54d6c297e6e16..46646b325c889af6f33933ec8d6ebc673c990a9d 100755 (executable)
@@ -1020,9 +1020,9 @@ def len_decode(data):
 ########################################################################
 
 class AutoAddSlots(type):
-    def __new__(mcs, name, bases, _dict):
+    def __new__(cls, name, bases, _dict):
         _dict["__slots__"] = _dict.get("__slots__", ())
-        return type.__new__(mcs, name, bases, _dict)
+        return type.__new__(cls, name, bases, _dict)
 
 
 @add_metaclass(AutoAddSlots)
@@ -1166,7 +1166,7 @@ class Obj(object):
                 tag_only=tag_only,
             )
             if tag_only:
-                return
+                return None
             obj, tail = result
         else:
             try:
@@ -1204,7 +1204,7 @@ class Obj(object):
                     tag_only=tag_only,
                 )
                 if tag_only:  # pragma: no cover
-                    return
+                    return None
                 obj, tail = result
                 eoc_expected, tail = tail[:EOC_LEN], tail[EOC_LEN:]
                 if eoc_expected.tobytes() != EOC:
@@ -1239,7 +1239,7 @@ class Obj(object):
                     tag_only=tag_only,
                 )
                 if tag_only:  # pragma: no cover
-                    return
+                    return None
                 obj, tail = result
                 if obj.tlvlen < l and not ctx.get("allow_expl_oob", False):
                     raise DecodeError(
@@ -1748,7 +1748,7 @@ class Boolean(Obj):
                 offset=offset,
             )
         if tag_only:
-            return
+            return None
         try:
             l, _, v = len_decode(lv)
         except DecodeError as err:
@@ -1978,6 +1978,7 @@ class Integer(Obj):
         for name, value in iteritems(self.specs):
             if value == self._value:
                 return name
+        return None
 
     def __call__(
             self,
@@ -2057,7 +2058,7 @@ class Integer(Obj):
                 offset=offset,
             )
         if tag_only:
-            return
+            return None
         try:
             l, llen, v = len_decode(lv)
         except DecodeError as err:
@@ -2475,7 +2476,7 @@ class BitString(Obj):
             )
         if t == self.tag:
             if tag_only:  # pragma: no cover
-                return
+                return None
             return self._decode_chunk(lv, offset, decode_path, ctx)
         if t == self.tag_constructed:
             if not ctx.get("bered", False):
@@ -2486,7 +2487,7 @@ class BitString(Obj):
                     offset=offset,
                 )
             if tag_only:  # pragma: no cover
-                return
+                return None
             lenindef = False
             try:
                 l, llen, v = len_decode(lv)
@@ -2851,7 +2852,7 @@ class OctetString(Obj):
             )
         if t == self.tag:
             if tag_only:
-                return
+                return None
             return self._decode_chunk(lv, offset, decode_path, ctx)
         if t == self.tag_constructed:
             if not ctx.get("bered", False):
@@ -2862,7 +2863,7 @@ class OctetString(Obj):
                     offset=offset,
                 )
             if tag_only:
-                return
+                return None
             lenindef = False
             try:
                 l, llen, v = len_decode(lv)
@@ -3078,7 +3079,7 @@ class Null(Obj):
                 offset=offset,
             )
         if tag_only:  # pragma: no cover
-            return
+            return None
         try:
             l, _, v = len_decode(lv)
         except DecodeError as err:
@@ -3333,7 +3334,7 @@ class ObjectIdentifier(Obj):
                 offset=offset,
             )
         if tag_only:  # pragma: no cover
-            return
+            return None
         try:
             l, llen, v = len_decode(lv)
         except DecodeError as err:
@@ -4251,7 +4252,7 @@ class Choice(Obj):
                 offset=offset,
             )
         if tag_only:  # pragma: no cover
-            return
+            return None
         value, tail = spec.decode(
             tlv,
             offset=offset,
@@ -4834,7 +4835,7 @@ class Sequence(Obj):
                 offset=offset,
             )
         if tag_only:  # pragma: no cover
-            return
+            return None
         lenindef = False
         ctx_bered = ctx.get("bered", False)
         try:
@@ -5084,7 +5085,7 @@ class Set(Sequence):
                 offset=offset,
             )
         if tag_only:
-            return
+            return None
         lenindef = False
         ctx_bered = ctx.get("bered", False)
         try:
@@ -5417,7 +5418,7 @@ class SequenceOf(Obj):
                 offset=offset,
             )
         if tag_only:
-            return
+            return None
         lenindef = False
         ctx_bered = ctx.get("bered", False)
         try:
index df75655613e0dde080135c6ed03921c1f0054285..dec37f3f3c65823612ff5a68bf23492a954ea0bb 100644 (file)
@@ -1137,7 +1137,7 @@ def bit_string_values_strategy(draw, schema=None, value_required=False, do_expl=
 
     def _value(value_required):
         if not value_required and draw(booleans()):
-            return
+            return None
         generation_choice = 0
         if value_required:
             generation_choice = draw(sampled_from((1, 2, 3)))
@@ -1146,9 +1146,9 @@ def bit_string_values_strategy(draw, schema=None, value_required=False, do_expl=
                 sampled_from(("0", "1")),
                 max_size=len(schema),
             )))
-        elif generation_choice == 2 or draw(booleans()):
+        if generation_choice == 2 or draw(booleans()):
             return draw(binary(max_size=len(schema) // 8))
-        elif generation_choice == 3 or draw(booleans()):
+        if generation_choice == 3 or draw(booleans()):
             return tuple(draw(lists(sampled_from([name for name, _ in schema]))))
         return None
     value = _value(value_required)
@@ -2741,8 +2741,7 @@ class TestObjectIdentifier(CommonMixin, TestCase):
             ObjectIdentifier((2, 999, 3)),
         )
 
-    @given(data_strategy())
-    def test_nonnormalized_first_arc(self, d):
+    def test_nonnormalized_first_arc(self):
         tampered = (
             ObjectIdentifier.tag_default +
             len_encode(2) +
@@ -2766,8 +2765,8 @@ class TestObjectIdentifier(CommonMixin, TestCase):
             max_size=5,
         ))
         dered = ObjectIdentifier((1, 0) + tuple(arcs)).encode()
-        _, tlen, lv = tag_strip(dered)
-        _, llen, v = len_decode(lv)
+        _, _, lv = tag_strip(dered)
+        _, _, v = len_decode(lv)
         v_no_first_arc = v[1:]
         idx_for_tamper = d.draw(integers(
             min_value=0,
@@ -4670,15 +4669,13 @@ def seq_values_strategy(draw, seq_klass, do_expl=False):
     value = None
     if draw(booleans()):
         value = seq_klass()
-        value._value = {
-            k: v for k, v in draw(dictionaries(
-                integers(),
-                one_of(
-                    booleans().map(Boolean),
-                    integers().map(Integer),
-                ),
-            )).items()
-        }
+        value._value = draw(dictionaries(
+            integers(),
+            one_of(
+                booleans().map(Boolean),
+                integers().map(Integer),
+            ),
+        ))
     schema = None
     if draw(booleans()):
         schema = list(draw(dictionaries(
@@ -4697,15 +4694,13 @@ def seq_values_strategy(draw, seq_klass, do_expl=False):
     default = None
     if draw(booleans()):
         default = seq_klass()
-        default._value = {
-            k: v for k, v in draw(dictionaries(
-                integers(),
-                one_of(
-                    booleans().map(Boolean),
-                    integers().map(Integer),
-                ),
-            )).items()
-        }
+        default._value = draw(dictionaries(
+            integers(),
+            one_of(
+                booleans().map(Boolean),
+                integers().map(Integer),
+            ),
+        ))
     optional = draw(one_of(none(), booleans()))
     _decoded = (
         draw(integers(min_value=0)),
@@ -5249,8 +5244,7 @@ class SeqMixing(object):
         with self.assertRaises(TagMismatch):
             seq_missing.decode(seq_encoded)
 
-    @given(data_strategy())
-    def test_bered(self, d):
+    def test_bered(self):
         class Seq(self.base_klass):
             schema = (("underlying", Boolean()),)
         encoded = Boolean.tag_default + len_encode(1) + b"\x01"
@@ -5384,7 +5378,7 @@ class TestSet(SeqMixing, CommonMixin, TestCase):
             self.assertTrue(seq_decoded.bered)
             self.assertSequenceEqual(
                 [bytes(seq_decoded[str(i)]) for i, t in enumerate(tags)],
-                [t for t in tags],
+                tags,
             )
 
 
@@ -5819,8 +5813,7 @@ class SeqOfMixing(object):
         with self.assertRaises(DecodeError):
             obj.decode(obj_encoded_lenindef[:-2], ctx={"bered": True})
 
-    @given(data_strategy())
-    def test_bered(self, d):
+    def test_bered(self):
         class SeqOf(self.base_klass):
             schema = Boolean()
         encoded = Boolean(False).encode()