Esempio n. 1
0
    def test_db_building_get_empty(self):

        building_db = BuildingDB()

        # get all items
        result = building_db.get_all()
        assert list(result) == []

        # try to get an inexistant item
        with pytest.raises(ItemNotFoundError):
            building_db.get_by_id('not_existing')
Esempio n. 2
0
    def test_db_building_update_delete(self, init_buildings):

        building_ids = init_buildings
        building_db = BuildingDB()

        # get all items
        result = building_db.get_all()
        buildings = list(result)
        assert len(buildings) == 2
        for cur_building in buildings:
            assert cur_building.id in building_ids

        # get an item by its ID
        building = building_db.get_by_id(buildings[0].id)

        # update item data
        new_description = 'updated by patator'
        new_area = 999
        building.description = new_description
        building.area = new_area
        building_db.update(building.id, building)

        # check that item has really been updated in database
        updated_building = building_db.get_by_id(building.id)
        assert updated_building.id == building.id
        assert updated_building.name == building.name
        assert updated_building.description == new_description
        assert updated_building.area == new_area
        assert updated_building.site_id == building.site_id

        # delete an item by its ID
        building_db.remove(building.id)

        # get an item by its ID
        with pytest.raises(ItemNotFoundError):
            # it has been removed...
            building_db.get_by_id(building.id)