]> Cypherpunks.ru repositories - pyderasn.git/blobdiff - tests/test_pyderasn.py
Fix double encoded values decoding in SET
[pyderasn.git] / tests / test_pyderasn.py
index 1cce9ed5a3988a92b92248e987d2e012366bf798..3161102997daf57449b26c20194b1081613f8b65 100644 (file)
@@ -6049,6 +6049,22 @@ class TestSet(SeqMixing, CommonMixin, TestCase):
                 tags,
             )
 
+    def test_same_value_twice(self):
+        class Seq(Set):
+            schema = (
+                ("bool", Boolean()),
+                ("int", Integer()),
+            )
+
+        encoded = b"".join((
+            Integer(123).encode(),
+            Integer(234).encode(),
+            Boolean(True).encode(),
+        ))
+        encoded = Seq.tag_default + len_encode(len(encoded)) + encoded
+        with self.assertRaises(TagMismatch):
+            Seq().decod(encoded, ctx={"allow_unordered_set": True})
+
 
 @composite
 def seqof_values_strategy(draw, schema=None, do_expl=False):