From 85656a56eb37492a8709bcab07294002cd9679ba Mon Sep 17 00:00:00 2001 From: Jussi Kukkonen Date: Tue, 17 Aug 2021 15:40:13 +0300 Subject: [PATCH] tests: Add missing test to TrustedMetadataSet Test failing length/hash test for snapshot Signed-off-by: Jussi Kukkonen --- tests/test_trusted_metadata_set.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests/test_trusted_metadata_set.py b/tests/test_trusted_metadata_set.py index 29e9896b..c794bf5a 100644 --- a/tests/test_trusted_metadata_set.py +++ b/tests/test_trusted_metadata_set.py @@ -277,6 +277,16 @@ def timestamp_expired_modifier(timestamp: Timestamp) -> None: with self.assertRaises(exceptions.ExpiredMetadataError): self.trusted_set.update_timestamp(timestamp) + def test_update_snapshot_length_or_hash_mismatch(self): + def modify_snapshot_length(timestamp: Timestamp) -> None: + timestamp.meta["snapshot.json"].length = 1 + + # set known snapshot.json length to 1 + timestamp = self.modify_metadata("timestamp", modify_snapshot_length) + self._root_updated_and_update_timestamp(timestamp) + + with self.assertRaises(exceptions.RepositoryError): + self.trusted_set.update_snapshot(self.metadata["snapshot"]) def test_update_snapshot_cannot_verify_snapshot_with_threshold(self): self._root_updated_and_update_timestamp(self.metadata["timestamp"])