def test_returns_None_for_missing_blob(self): bag_store = DummyBagStore() blob_store = obnamlib.BlobStore() blob_store.set_bag_store(bag_store) blob_id = obnamlib.make_object_id(123, 456) self.assertEqual(blob_store.get_blob(blob_id), None)
def get_chunks_in_bag(self, bag_id): try: bag = self._bag_store.get_bag(bag_id) except EnvironmentError: pass else: for i in range(len(bag)): yield obnamlib.make_object_id(bag_id, i)
def get_blob(self, blob_id): bag_id, index = obnamlib.parse_object_id(blob_id) if self._bag and bag_id == self._bag.get_id(): return self._bag[index] if blob_id in self._cached_blobs: return self._cached_blobs.get(blob_id) if self._bag_store.has_bag(bag_id): bag = self._bag_store.get_bag(bag_id) for i, this_blob in enumerate(bag): this_id = obnamlib.make_object_id(bag_id, i) self._cached_blobs.put(this_id, this_blob) return bag[index] return None
def test_round_trip_works(self): bag_id = 123 object_index = 456 object_id = obnamlib.make_object_id(bag_id, object_index) self.assertEqual(obnamlib.parse_object_id(object_id), (bag_id, object_index))
def test_appending_returns_object_id_when_bag_id_is_a_string(self): bag = obnamlib.Bag() bag.set_id('well-known') object_id = bag.append('foo') self.assertEqual(object_id, obnamlib.make_object_id('well-known', 0))
def test_appending_returns_object_id(self): bag = obnamlib.Bag() bag.set_id(1) object_id = bag.append('foo') self.assertEqual(object_id, obnamlib.make_object_id(1, 0))
def test_appending_returns_object_id(self): bag = obnamlib.Bag() bag.set_id(1) object_id = bag.append("foo") self.assertEqual(object_id, obnamlib.make_object_id(1, 0))
def get_chunk_ids_in_bag(bag_id): bag = chunk_store._bag_store.get_bag(bag_id) return [ obnamlib.make_object_id(bag_id, i) for i in range(len(bag)) ]
def _get_chunk_ids_from_bag(self, bag): return [obnamlib.make_object_id(bag.get_id(), i) for i in range(len(bag))]
def append(self, blob): if self.get_id() is None: raise BagIdNotSetError() self._blobs.append(blob) self._blobs_bytes += len(blob) return obnamlib.make_object_id(self.get_id(), len(self) - 1)