From 81a5287984cd31080f7a5a1b249caf626ac8f6bf Mon Sep 17 00:00:00 2001 From: Alex Gaynor Date: Thu, 3 Oct 2013 09:58:45 -0700 Subject: Use a None default so composition is easier --- cryptography/primitives/block/base.py | 6 +++++- tests/primitives/test_block.py | 7 +++++++ tox.ini | 2 +- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/cryptography/primitives/block/base.py b/cryptography/primitives/block/base.py index 197807ea..b84ca9c4 100644 --- a/cryptography/primitives/block/base.py +++ b/cryptography/primitives/block/base.py @@ -24,8 +24,12 @@ class _Operation(Enum): class BlockCipher(object): - def __init__(self, cipher, mode, api=_default_api): + def __init__(self, cipher, mode, api=None): super(BlockCipher, self).__init__() + + if api is None: + api = _default_api + self.cipher = cipher self.mode = mode self._api = api diff --git a/tests/primitives/test_block.py b/tests/primitives/test_block.py index 92fd31a3..774885fa 100644 --- a/tests/primitives/test_block.py +++ b/tests/primitives/test_block.py @@ -31,6 +31,13 @@ class TestBlockCipher(object): ) assert cipher.name == "AES-128-CBC" + def test_instantiate_without_api(self): + cipher = BlockCipher( + ciphers.AES(binascii.unhexlify(b"0" * 32)), + modes.CBC(binascii.unhexlify(b"0" * 32)) + ) + assert cipher.name == "AES-128-CBC" + def test_use_after_finalize(self, api): cipher = BlockCipher( ciphers.AES(binascii.unhexlify(b"0" * 32)), diff --git a/tox.ini b/tox.ini index 88e74219..0a28af15 100644 --- a/tox.ini +++ b/tox.ini @@ -8,7 +8,7 @@ deps = pretend commands = coverage run --source=cryptography/,tests/ -m pytest - coverage report + coverage report -m [testenv:docs] deps = sphinx -- cgit v1.2.3