Esempio n. 1
0
def editHotel(hotel_id):
    logger.info("Got an Edit hotel page request: %s" % request)
    db = AndrewDB()
    form = CUHotelForm()
    form.csrf_enabled = False
    if current_user.is_hotel_admin():
        logger.info("Validating the Create and Update hotel form")
        if form.validate_on_submit():
            img_name = imgName(form.img.data.filename)
            if img_name:
                db.insert_location_if_not_exists(form.country.data,
                                                 form.city.data)

                old_img = db.get_image_name_by_hotel_id(hotel_id)
                img_path = '/static/img/hotels/' + img_name
                db.update_hotel_by_id(hotel_id, form.city.data,
                                      form.address.data, form.hotel_name.data,
                                      form.stars.data, form.description.data,
                                      img_path)
                form.img.data.save(
                    os.path.join(app.config['UPLOAD_FOLDER'], img_name))
                os.remove(os.path.abspath('app' + old_img))
                return redirect(url_for('myHotels'))
        res = db.get_hotel_and_address_by_id(hotel_id)
        logger.info("Rendering the Edit hotel page")
        return render_template('edit_hotel.html', form=form, hotel=res)
    else:
        flash("Access error")
        logger.info("Access error, Redirecting to login page")
        return redirect(url_for('login'))
Esempio n. 2
0
def test_get_hotel_and_address_by_id(mock_connect):
    with allure.step('Get hotel and address'):
        with app.app_context():
            db = AndrewDB()
            expected = {'hotel_id': "1", 'address': "Innopolis"}
            mock_connect().cursor.return_value.fetchone.return_value = expected
            result = db.get_hotel_and_address_by_id(1)
        assert result == expected