Атрибут application
Атрибут application применяется к объекту клиента
FlaskClient и возвращает экземпляр приложения Flask,
с которым связан данный тестовый клиент. Это позволяет
получить доступ к конфигурации, маршрутам и другим
свойствам приложения прямо из теста.
Синтаксис
client.application
Пример
Давайте создадим приложение и получим доступ к его
атрибуту application через тестовый клиент:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return 'hello'
with app.test_client() as client:
res = client.application
print(res.name)
Результат выполнения кода:
"app"
Пример
Давайте через атрибут application изменим
конфигурацию приложения внутри теста:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return 'hello'
with app.test_client() as client:
client.application.config['TESTING'] = True
print(client.application.config['TESTING'])
Результат выполнения кода:
True
Пример
Давайте получим список всех маршрутов приложения
через атрибут application:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return 'hello'
@app.route('/user')
def user():
return 'user'
with app.test_client() as client:
res = []
for rule in client.application.url_map.iter_rules():
res.append(str(rule))
print(res)
Результат выполнения кода:
['/static/<path:filename>', '/', '/user']
Смотрите также
-
класс
FlaskClient,
который создаёт тестовый клиент приложения -
метод
get,
который выполняет GET-запрос к приложению -
метод
post,
который выполняет POST-запрос к приложению -
атрибут
cookie_jar,
который хранит cookies тестового клиента