diff --git a/src/_zkapauthorizer/tests/_exception.py b/src/_zkapauthorizer/tests/_exception.py index 504e383cb5a664cee0a0c11449721072e3bb80c4..5e8bc8f5b21c29ebba4e93528a417761ff3fcf1d 100644 --- a/src/_zkapauthorizer/tests/_exception.py +++ b/src/_zkapauthorizer/tests/_exception.py @@ -60,7 +60,7 @@ class MatchesExceptionType(Matcher): etype, evalue, etb = other if not issubclass(etype, expected_class): return Mismatch( - "{} is an instance of {}, expected an instance of {}.".format( + "{!r} is an instance of {}, expected an instance of {}.".format( evalue, etype, expected_class, diff --git a/src/_zkapauthorizer/tests/test_model.py b/src/_zkapauthorizer/tests/test_model.py index 5975f597da9be24bcbd9d9f8fcf153daa464cfb1..8929957edf209af5949778fa12d58af6b3807922 100644 --- a/src/_zkapauthorizer/tests/test_model.py +++ b/src/_zkapauthorizer/tests/test_model.py @@ -45,7 +45,6 @@ from testtools.matchers import ( Equals, Raises, IsInstance, - raises, ) from fixtures import ( @@ -97,6 +96,9 @@ from .strategies import ( from .fixtures import ( TemporaryVoucherStore, ) +from .matchers import ( + raises, +) class VoucherStoreTests(TestCase): @@ -368,14 +370,14 @@ class UnblindedTokenStoreTests(TestCase): Unblinded tokens for a voucher which has not been added to the store cannot be inserted. """ store = self.useFixture(TemporaryVoucherStore(get_config, lambda: now)).store - try: - result = store.insert_unblinded_tokens_for_voucher(voucher_value, public_key, unblinded_tokens) - except ValueError: - pass - except Exception as e: - self.fail("insert_unblinded_tokens_for_voucher raised the wrong exception: {}".format(e)) - else: - self.fail("insert_unblinded_tokens_for_voucher didn't raise, returned: {}".format(result)) + self.assertThat( + lambda: store.insert_unblinded_tokens_for_voucher( + voucher_value, + public_key, + unblinded_tokens, + ), + raises(ValueError), + ) @given( tahoe_configs(), @@ -396,14 +398,10 @@ class UnblindedTokenStoreTests(TestCase): self.expectThat(unblinded_tokens, AfterPreprocessing(sorted, Equals(retrieved_tokens))) # After extraction, the unblinded tokens are no longer available. - try: - result = store.extract_unblinded_tokens(1) - except NotEnoughTokens: - pass - except Exception as e: - self.fail("extract_unblinded_tokens raised wrong exception: {}".format(e)) - else: - self.fail("extract_unblinded_tokens didn't raise, returned: {}".format(result)) + self.assertThat( + lambda: store.extract_unblinded_tokens(1), + raises(NotEnoughTokens), + ) @given( tahoe_configs(), @@ -505,14 +503,10 @@ class UnblindedTokenStoreTests(TestCase): store = self.useFixture(TemporaryVoucherStore(get_config, lambda: now)).store store.add(voucher_value, lambda: random) store.insert_unblinded_tokens_for_voucher(voucher_value, public_key, unblinded) - try: - result = store.mark_voucher_double_spent(voucher_value) - except ValueError: - pass - except Exception as e: - self.fail("mark_voucher_double_spent raised the wrong exception: {}".format(e)) - else: - self.fail("mark_voucher_double_spent didn't raise, returned: {}".format(result)) + self.assertThat( + lambda: store.mark_voucher_double_spent(voucher_value), + raises(ValueError), + ) @given( tahoe_configs(), @@ -524,14 +518,10 @@ class UnblindedTokenStoreTests(TestCase): A voucher which is not known cannot be marked as double-spent. """ store = self.useFixture(TemporaryVoucherStore(get_config, lambda: now)).store - try: - result = store.mark_voucher_double_spent(voucher_value) - except ValueError: - pass - except Exception as e: - self.fail("mark_voucher_double_spent raised the wrong exception: {}".format(e)) - else: - self.fail("mark_voucher_double_spent didn't raise, returned: {}".format(result)) + self.assertThat( + lambda: store.mark_voucher_double_spent(voucher_value), + raises(ValueError), + ) @given( tahoe_configs(), @@ -567,14 +557,10 @@ class UnblindedTokenStoreTests(TestCase): store.add(voucher_value, lambda: random) store.insert_unblinded_tokens_for_voucher(voucher_value, public_key, unblinded) - try: - result = store.extract_unblinded_tokens(num_tokens + extra) - except NotEnoughTokens: - pass - except Exception as e: - self.fail("extract_unblinded_tokens raised wrong exception: {}".format(e)) - else: - self.fail("extract_unblinded_tokens didn't raise, returned: {}".format(result)) + self.assertThat( + lambda: store.extract_unblinded_tokens(num_tokens + extra), + raises(NotEnoughTokens), + ) # TODO: Other error states and transient states