def test_add_item(self, identified_items): collection = IdentifiedCollection(identified_items) item_new = collection.add(id=1) assert collection.count == len(identified_items) + 1 assert item_new in collection.items assert collection.items[0] == item_new
def test_get_colony(self, identified_items, item_rand_id): collection = IdentifiedCollection(identified_items) item = collection.get_item(item_rand_id) assert item is not None assert item.id == item_rand_id
def test_items_iterable(self, items): collection = IdentifiedCollection() if isinstance(items, dict): items[1] = TestIdentifiedCollection.IdentifiedMock(1) else: items.append(TestIdentifiedCollection.IdentifiedMock(1)) collection.items = items assert isinstance(collection.items, list) assert len(collection.items) == len(items)
def test_items_sorted(self, identified_items): from random import sample identified_items_shuffled = sample(identified_items, len(identified_items)) collection = IdentifiedCollection(identified_items_shuffled) assert collection.items != identified_items_shuffled assert collection.items == identified_items
def test_remove_item(self, identified_items, item_rand_id): collection = IdentifiedCollection(identified_items) item = collection[item_rand_id] assert item is not None del collection[item_rand_id] assert item not in collection
def test_remove_item(self, identified_items, item_rand_id): collection = IdentifiedCollection(identified_items) item = collection.get_item(item_rand_id) assert item is not None collection.remove(item_rand_id) item = collection.get_item(item_rand_id) assert item is None
def test_append_item(self): collection = IdentifiedCollection() identified_item = TestIdentifiedCollection.IdentifiedMock(1) collection.append(identified_item) assert collection.count == 1 assert any(identified_item.id == item.id for item in collection.items) with pytest.raises(ValueError): collection.append(identified_item)
def test_items_none(self): collection = IdentifiedCollection(None) collection.items = None assert collection.items is not None assert isinstance(collection.items, list)
def test_count(self, identified_items): collection = IdentifiedCollection(identified_items) assert collection.count == len(identified_items)
def test_init_list(self, identified_items): collection = IdentifiedCollection(identified_items) assert collection.items == identified_items
def test_init(self): assert IdentifiedCollection().items == list()
def test_remove_item_invalid(self, identified_items): collection = IdentifiedCollection(identified_items) with pytest.raises(KeyError): collection.remove(-1)
def test_id_exists(self, identified_items): collection = IdentifiedCollection(identified_items) assert collection.id_exists(identified_items[0].id)
def test_items_iterable_invalid(self, items): collection = IdentifiedCollection() with pytest.raises((TypeError, ValueError)): collection.items = items