X-Git-Url: https://git.distorted.org.uk/~mdw/catacomb-python/blobdiff_plain/10f3f611ac34a7c7c62edac5bddf2984a98683a2..04b75d719e7435aac5a943ec083bb6c0789e4afd:/t/t-algorithms.py diff --git a/t/t-algorithms.py b/t/t-algorithms.py index d9f94df..bf637ef 100644 --- a/t/t-algorithms.py +++ b/t/t-algorithms.py @@ -712,7 +712,7 @@ class TestHLatin (U.TestCase): """Test the `hsalsa20' and `hchacha20' functions.""" def test_hlatin(me): - kk = [T.span(sz) for sz in [32]] + kk = [T.span(sz) for sz in [10, 16, 32]] n = T.span(16) bad_k = T.span(18) bad_n = T.span(13) @@ -742,6 +742,13 @@ class TestKeccak (HashBufferTestMixin): st1.mix(m0).step() me.assertNotEqual(st0.extract(32), st1.extract(32)) + ## Check state copying. + st1 = st0.copy() + mask = st1.extract(len(m1)) + st0.mix(m1) + st1.mix(m1) + me.assertEqual(st0.extract(32), st1.extract(32)) + ## Check error conditions. _ = st0.extract(200) me.assertRaises(ValueError, st0.extract, 201) @@ -781,7 +788,7 @@ class TestKeccak (HashBufferTestMixin): ## Check masking. x = xcls().hash(m).xof() - me.assertEqual(x.mask(m), C.ByteString(m) ^ C.ByteString(h[0:len(m)])) + me.assertEqual(x.mask(m), m ^ h[0:len(m)]) ## Check the `check' method. me.assertTrue(xcls().hash(m).check(h0)) @@ -813,7 +820,7 @@ class TestKeccak (HashBufferTestMixin): def check_kmac(me, mcls, c): k = T.span(32) - me.check_shake(lambda func = None, perso = T.bin(""): + me.check_shake(lambda func = None, perso = None: mcls(k, perso = perso), c, done_matches_xof = False)