def test_get_entry_and_proof_raises_on_invalid_base64(self): json_response = test_util.entry_and_proof_to_json( test_util.make_entry(1), test_util.DEFAULT_FAKE_PROOF) json_response["leaf_input"] = ["garbagebase64^^^"] client = self.one_shot_client(json_response) self.assertRaises(log_client.InvalidResponseError, client.get_entry_and_proof, 1, 2)
def test_get_proof_by_hash(self): client = self.default_client() entry = test_util.make_entry(1) hasher = merkle.TreeHasher() leaf_hash = hasher.hash_leaf(entry.leaf_input) proof_by_hash = client.get_proof_by_hash(leaf_hash, 2) self.assertEqual(proof_by_hash.audit_path, test_util.DEFAULT_FAKE_PROOF) self.assertEqual(proof_by_hash.leaf_index, 1)
def test_get_entries_use_stored_entries(self): fake_db = self.FakeDB() # if client tries to fetch entries instead of taking them from db, then # he will get 0 - 9 entries. If he uses db then he will get 10 - 19 fake_db.scan_entries = mock.Mock( return_value=test_util.make_entries(10, 19)) client = self.default_client(entries_db=fake_db) consumer = self.get_entries(client, 0, 9) self.assertEqual(len(consumer.received), 10) for i in range(0, 9): self.assertEqual(test_util.make_entry(i + 10), consumer.received[i])
def test_get_entries_use_stored_entries(self): fake_db = self.FakeDB() # if client tries to fetch entries instead of taking them from db, then # he will get 0 - 9 entries. If he uses db then he will get 10 - 19 fake_db.scan_entries = mock.Mock( return_value=test_util.make_entries(10, 19)) client = self.default_client(entries_db=fake_db, reactor_=reactor) consumer = self.get_entries(client, 0, 9) consumer.consumed.addCallback(lambda _: self.assertEqual(len(consumer.received), 10)) consumer.consumed.addCallback(lambda _: [self.assertEqual(test_util.make_entry(i + 10), consumer.received[i]) for i in range(0, 9)])
def test_get_entry_and_proof(self): client = self.default_client() entry_and_proof = client.get_entry_and_proof(1, 2) self.assertEqual(entry_and_proof.entry, test_util.make_entry(1)) self.assertEqual(entry_and_proof.audit_path, test_util.DEFAULT_FAKE_PROOF)