# This file is dual licensed under the terms of the Apache License, Version # 2.0, and the BSD License. See the LICENSE file in the root of this repository # for complete details. from hypothesis import given from hypothesis.strategies import binary from cryptography.hazmat.primitives.padding import PKCS7 @given(binary()) def test_pkcs7(data): # TODO: add additional tests with arbitrary block sizes p = PKCS7(block_size=128) padder = p.padder() unpadder = p.unpadder() padded = padder.update(data) + padder.finalize() assert unpadder.update(padded) + unpadder.finalize() == data