示例#1
0
def url_for(*args, **kwargs):
    """ `flask.url_for`는 flask 앱의 context가 필요합니다. 따라서 context안에서
    생성한 url을 가져와서 사용하면됩니다. 테스트 코드 내부에서 그냥
    `flask.url_for`를 사용하면 에러가 나게됩니다.
    """
    with app.test_request_context() as ctx_:
        return flask_url_for(*args, **kwargs)
示例#2
0
def f_session(request):
    with app.test_request_context() as _ctx:
        Session = sessionmaker(autocommit=False, autoflush=False)
        app.config['DATABASE_URL'] = 'sqlite:///test.db'
        engine = get_engine(app)
        Base.metadata.create_all(engine)
        _ctx.push()
        session = Session(bind=engine)
        setattr(g, 'sess', session)
        def finish():
            session.close()
            Base.metadata.drop_all(engine)
            engine.dispose()

        request.addfinalizer(finish)
        return session