Spec-Zone.ru › Falcon 1.3

Тестирование

Справочник

Функциональная система тестирования для приложений Falcon и самого Falcon.

Модуль тестирования Falcon содержит различные классы тестов и вспомогательные функции для поддержки функционального тестирования как для приложений на базе Falcon, так и для самого фреймворка Falcon.

Система тестирования поддерживает как unittest, так и pytest:

# -----------------------------------------------------------------
# unittest
# -----------------------------------------------------------------

from falcon import testing
import myapp


class MyTestCase(testing.TestCase):
    def setUp(self):
        super(MyTestCase, self).setUp()

        # Assume the hypothetical `myapp` package has a
        # function called `create()` to initialize and
        # return a `falcon.API` instance.
        self.app = myapp.create()


class TestMyApp(MyTestCase):
    def test_get_message(self):
        doc = {u'message': u'Hello world!'}

        result = self.simulate_get('/messages/42')
        self.assertEqual(result.json, doc)


# -----------------------------------------------------------------
# pytest
# -----------------------------------------------------------------

from falcon import testing
import pytest

import myapp


# Depending on your testing strategy and how your application
# manages state, you may be able to broaden the fixture scope
# beyond the default 'function' scope used in this example.

@pytest.fixture()
def client():
    # Assume the hypothetical `myapp` package has a function called
    # `create()` to initialize and return a `falcon.API` instance.
    return testing.TestClient(myapp.create())


def test_get_message(client):
    doc = {u'message': u'Hello world!'}

    result = client.simulate_get('/messages/42')
    assert result.json == doc
class falcon.testing.Result(iterable, status, headers) [source]

Инкапсулирует результат моделируемого запроса WSGI.

Параметры:
  • iterable (iterable) – Итерируемый объект, который возвращает нулевые или более байтовых строк в соответствии с PEP-3333
  • status (str) – Строка HTTP-статуса, включая код статуса и строку причины
  • headers (list) – Список кортежей (имя_заголовка, значение_заголовка), в соответствии с PEP-3333
status

str – Строка HTTP-статуса, возвращённая в ответе

status_code

int – Кодовая часть строки HTTP-статуса

headers

CaseInsensitiveDict – Словарь, не чувствительный к регистру, содержащий все заголовки в ответе, кроме куки, к которым можно обратиться через атрибут cookies.

Примечание

В настоящее время не поддерживается несколько экземпляров одного заголовка в ответе; не определено, какое значение «победит» и будет представлено в headers.

cookies

dict – Словарь значений falcon.testing.Cookie, разобранных из ответа по имени.

encoding

str – Кодировка текста тела ответа, или None если кодировка не может быть определена.

content

bytes – Необработанное тело ответа, или bytes если тело ответа было пустым.

text

str – Декодированное тело ответа типа unicode в Python 2.6 и 2.7, и типа str в остальных случаях. Если тип содержимого не указывает кодировку, используется UTF-8.

json

dict – Десериализованное тело JSON. Вызывает ошибку, если ответ не является JSON.

class falcon.testing.Cookie(morsel) [source]

Представляет куки, возвращённые моделируемым запросом.

Параметры: morsel – Объект Morsel, из которого извлекаются данные куки.
name

str – Имя куки.

value

str – Значение куки.

expires

datetime.datetime – Маркер истечения срока действия куки, или None если не указано.

path

str – Префикс пути, к которому ограничена эта куки, или None если не указано.

domain

str – Домен, к которому ограничена эта куки, или None если не указано.

max_age

int – Срок жизни куки в секундах, или None если не указано.

secure

bool – Указывает, может ли куки передаваться только с использованием HTTPS.

http_only

bool – Указывает, может ли куки быть включена только в запросах без скриптов от клиента.

falcon.testing.simulate_request(app, method='GET', path='/', query_string=None, headers=None, body=None, file_wrapper=None, wsgierrors=None, params=None, params_csv=True, protocol='http') [source]

Моделирует запрос к WSGI-приложению.

Выполняет запрос к WSGI-приложению. Использует wsgiref.validate для проверки валидности WSGI ответа.

Ключевые аргументы:
  • app (callable) – WSGI-приложение для вызова
  • method (str) – HTTP-метод для использования в запросе (по умолчанию: ‘GET’)
  • path (str) – Путь URL для запроса (по умолчанию: ‘/’)
  • protocol – Протокол для использования в схеме URL (по умолчанию: ‘http’)
  • params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо str, либо что-то, что может быть преобразовано в str, или список таких значений. Если это list, значение преобразуется в строку значений, разделенных запятыми (например, ‘thing=1,2,3’).
  • params_csv (bool) – Установить в False для кодирования списков значений в параметрах строки запроса путём указания нескольких экземпляров параметра (например, ‘thing=1&thing=2&thing=3’). В противном случае параметры будут закодированы как значения, разделенные запятыми (например, ‘thing=1,2,3’). По умолчанию True.
  • query_string (str) – Сырая строка запроса для включения в запрос (по умолчанию: None). При указании переопределяет params.
  • headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию: None)
  • body (str) – Строка для отправки в качестве тела запроса. Принимает как байтовые строки, так и строки Юникода (по умолчанию: None). Если предоставляется строка Юникода, она будет закодирована как UTF-8 в запросе.
  • file_wrapper (callable) – Функция, возвращающая итерируемый объект, используемый в качестве значения для wsgi.file_wrapper в окружении (по умолчанию: None). Это можно использовать для тестирования высокопроизводительной передачи файлов, когда resp.stream установлено в объект, подобный файлу.
  • wsgierrors (io) – Поток, используемый в качестве wsgierrors (по умолчанию sys.stderr)
Возвращает:

Результат запроса

Тип возвращаемого значения:

Result

falcon.testing.simulate_get(app, path, **kwargs) [source]

Имитирует GET-запрос к WSGI-приложению.

Эквивалентно:

simulate_request(app, 'GET', path, **kwargs)
Параметры:
  • app (callable) – WSGI-приложение для вызова
  • path (str) – Путь к URL для запроса
Ключевые аргументы:
  • params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо str , либо что-то, что можно преобразовать в str, или список таких значений. Если значение — list, значение будет преобразовано в строку значений, разделённых запятыми (например, «thing=1,2,3»).
  • params_csv (bool) – Устанавливается в False для кодирования значений списков в параметрах строки запроса, указав несколько экземпляров параметра (например, «thing=1&thing=2&thing=3»). В противном случае параметры будут закодированы как значения, разделённые запятыми (например, «thing=1,2,3»). По умолчанию True.
  • query_string (str) – Необработанная строка запроса для включения в запрос (по умолчанию: None). Если указано, переопределяет params.
  • headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию: None)
  • file_wrapper (callable) – Функция, возвращающая итерируемый объект, используемый в качестве значения для wsgi.file_wrapper в среде (по умолчанию: None). Это можно использовать для тестирования высокопроизводительной передачи файлов, когда resp.stream установлено в файловый объект.
  • protocol – Протокол для использования в схеме URL (по умолчанию: «http»)
falcon.testing.simulate_head(app, path, **kwargs) [source]

Имитирует HEAD-запрос к WSGI-приложению.

Эквивалентно:

simulate_request(app, 'HEAD', path, **kwargs)
Параметры:
  • app (callable) – WSGI-приложение для вызова
  • path (str) – Путь к URL для запроса
Ключевые аргументы:
  • params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо str , либо что-то, что можно преобразовать в str, или список таких значений. Если значение — list, значение будет преобразовано в строку значений, разделённых запятыми (например, «thing=1,2,3»).
  • params_csv (bool) – Устанавливается в False для кодирования значений списков в параметрах строки запроса, указав несколько экземпляров параметра (например, «thing=1&thing=2&thing=3»). В противном случае параметры будут закодированы как значения, разделённые запятыми (например, «thing=1,2,3»). По умолчанию True.
  • query_string (str) – Необработанная строка запроса для включения в запрос (по умолчанию: None). Если указано, переопределяет params.
  • headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию: None)
  • protocol – Протокол для использования в схеме URL (по умолчанию: «http»)
falcon.testing.simulate_post(app, path, **kwargs) [source]

Имитирует POST-запрос к WSGI-приложению.

Эквивалентно:

simulate_request(app, 'POST', path, **kwargs)
Параметры:
  • app (callable) – WSGI-приложение для вызова
  • path (str) – Путь к URL для запроса
Ключевые аргументы:
  • params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо str , либо что-то, что можно преобразовать в str, или список таких значений. Если значение — list, значение будет преобразовано в строку значений, разделённых запятыми (например, «thing=1,2,3»).
  • params_csv (bool) – Устанавливается в False для кодирования значений списков в параметрах строки запроса, указав несколько экземпляров параметра (например, «thing=1&thing=2&thing=3»). В противном случае параметры будут закодированы как значения, разделённые запятыми (например, «thing=1,2,3»). По умолчанию True.
  • headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию: None)
  • body (str) – Строка для отправки в качестве тела запроса. Принимает как байтовые строки, так и строки Юникода (по умолчанию: None). Если предоставлена строка Юникода, она будет закодирована как UTF-8 в запросе.
  • protocol – Протокол для использования в схеме URL (по умолчанию: «http»)
falcon.testing.simulate_put(app, path, **kwargs) [source]

Имитирует PUT-запрос к WSGI-приложению.

Эквивалентно:

simulate_request(app, 'PUT', path, **kwargs)
Параметры:
  • app (callable) – WSGI-приложение для вызова
  • path (str) – Путь к URL для запроса
Ключевые аргументы:
  • params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо str , либо что-то, что можно преобразовать в str, или список таких значений. Если значение — list, значение будет преобразовано в строку значений, разделённых запятыми (например, «thing=1,2,3»).
  • params_csv (bool) – Устанавливается в False для кодирования значений списков в параметрах строки запроса, указав несколько экземпляров параметра (например, «thing=1&thing=2&thing=3»). В противном случае параметры будут закодированы как значения, разделённые запятыми (например, «thing=1,2,3»). По умолчанию True.
  • headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию: None)
  • body (str) – Строка для отправки в качестве тела запроса. Принимает как байтовые строки, так и строки Юникода (по умолчанию: None). Если предоставлена строка Юникода, она будет закодирована как UTF-8 в запросе.
  • protocol – Протокол для использования в схеме URL (по умолчанию: «http»)
falcon.testing.simulate_options(app, path, **kwargs) [source]

Имитирует запрос OPTIONS к WSGI-приложению.

Эквивалентно:

simulate_request(app, 'OPTIONS', path, **kwargs)
Параметры:
  • app (callable) – WSGI-приложение для вызова
  • path (str) – Путь URL для запроса
Ключевые аргументы:
  • params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо str , либо что-то, что может быть преобразовано в str, или список таких значений. Если значение list, значение будет преобразовано в строку значений, разделенных запятыми (например, «thing=1,2,3»).
  • params_csv (bool) – Установите в False , чтобы закодировать значения списков в параметрах строки запроса, указав несколько экземпляров параметра (например, «thing=1&thing=2&thing=3»). В противном случае параметры будут закодированы как значения, разделенные запятыми (например, «thing=1,2,3»). По умолчанию True.
  • headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию: None)
  • protocol – Протокол для использования в схеме URL (по умолчанию: «http»)
falcon.testing.simulate_patch(app, path, **kwargs) [source]

Имитирует запрос PATCH к WSGI-приложению.

Эквивалентно:

simulate_request(app, 'PATCH', path, **kwargs)
Параметры:
  • app (callable) – WSGI-приложение для вызова
  • path (str) – Путь URL для запроса
Ключевые аргументы:
  • params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо str , либо что-то, что может быть преобразовано в str, или список таких значений. Если значение list, значение будет преобразовано в строку значений, разделенных запятыми (например, «thing=1,2,3»).
  • params_csv (bool) – Установите в False , чтобы закодировать значения списков в параметрах строки запроса, указав несколько экземпляров параметра (например, «thing=1&thing=2&thing=3»). В противном случае параметры будут закодированы как значения, разделенные запятыми (например, «thing=1,2,3»). По умолчанию True.
  • headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию: None)
  • body (str) – Строка для отправки в качестве тела запроса. Принимает как байтовые строки, так и строки Юникода (по умолчанию: None). Если предоставлена строка Юникода, она будет закодирована в UTF-8 в запросе.
  • protocol – Протокол для использования в схеме URL (по умолчанию: «http»)
falcon.testing.simulate_delete(app, path, **kwargs) [source]

Имитирует запрос DELETE к WSGI-приложению.

Эквивалентно:

simulate_request(app, 'DELETE', path, **kwargs)
Параметры:
  • app (callable) – WSGI-приложение для вызова
  • path (str) – Путь URL для запроса
Ключевые аргументы:
  • params (dict) – Словарь параметров строки запроса, где каждый ключ — имя параметра, а каждое значение — либо str , либо что-то, что может быть преобразовано в str, или список таких значений. Если значение list, значение будет преобразовано в строку значений, разделенных запятыми (например, «thing=1,2,3»).
  • params_csv (bool) – Установите в False , чтобы закодировать значения списков в параметрах строки запроса, указав несколько экземпляров параметра (например, «thing=1&thing=2&thing=3»). В противном случае параметры будут закодированы как значения, разделенные запятыми (например, «thing=1,2,3»). По умолчанию True.
  • headers (dict) – Дополнительные заголовки для включения в запрос (по умолчанию: None)
  • protocol – Протокол для использования в схеме URL (по умолчанию: «http»)
class falcon.testing.TestClient(app) [source]

Имитирует запросы к WSGI-приложению.

Этот класс предоставляет контекстный обертка для функций тестирования simulate_* Falcon. Он позволяет заменить это:

simulate_get(app, '/messages')
simulate_head(app, '/messages')

на это:

client = TestClient(app)
client.simulate_get('/messages')
client.simulate_head('/messages')
Параметры: app (callable) – WSGI-приложение, на которое будут направляться имитируемые запросы
simulate_delete(path='/', **kwargs) [source]

Имитирует запрос DELETE к WSGI-приложению.

(См. также: falcon.testing.simulate_delete())

simulate_get(path='/', **kwargs) [source]

Имитирует запрос GET к WSGI-приложению.

(См. также: falcon.testing.simulate_get())

simulate_head(path='/', **kwargs) [source]

Имитирует запрос HEAD к WSGI-приложению.

(См. также: falcon.testing.simulate_head())

simulate_options(path='/', **kwargs) [source]

Имитирует запрос OPTIONS к WSGI-приложению.

(См. также: falcon.testing.simulate_options())

simulate_patch(path='/', **kwargs) [source]

Имитирует запрос PATCH к WSGI-приложению.

(См. также: falcon.testing.simulate_patch())

simulate_post(path='/', **kwargs) [source]

Имитирует запрос POST к WSGI-приложению.

(См. также: falcon.testing.simulate_post())

simulate_put(path='/', **kwargs) [source]

Имитирует запрос PUT к WSGI-приложению.

(См. также: falcon.testing.simulate_put())

simulate_request(*args, **kwargs) [source]

Имитирует запрос к WSGI-приложению.

Оборачивает falcon.testing.simulate_request() для выполнения прямого WSGI-запроса к self.app. Эквивалентно:

falcon.testing.simulate_request(self.app, *args, **kwargs)
class falcon.testing.TestCase(methodName='runTest') [source]

Расширяет unittest для поддержки функционального тестирования WSGI.

Примечание

Если доступно, использует testtools вместо unittest.

Этот базовый класс предоставляет дополнительную функциональность для тестовых случаев в стиле unittest, чтобы имитировать вызовы WSGI без необходимости запускать фактический веб-сервер. Различные методы имитации унаследованы от falcon.testing.TestClient.

Просто унаследуйте от этого класса в своих тестовых классах вместо unittest.TestCase или testtools.TestCase.

app

объект – WSGI-приложение, на которое будут направляться имитируемые запросы (по умолчанию: falcon.API()). При тестировании вашего приложения вам необходимо установить это значение на свой экземпляр falcon.API. Например:

from falcon import testing
import myapp


class MyTestCase(testing.TestCase):
    def setUp(self):
        super(MyTestCase, self).setUp()

        # Assume the hypothetical `myapp` package has a
        # function called `create()` to initialize and
        # return a `falcon.API` instance.
        self.app = myapp.create()


class TestMyApp(MyTestCase):
    def test_get_message(self):
        doc = {u'message': u'Hello world!'}

        result = self.simulate_get('/messages/42')
        self.assertEqual(result.json, doc)
api

объект – Устаревшее псевдоним для app

api_class

вызов – Устаревшая переменная класса; будет удалена в будущей версии.

class falcon.testing.SimpleTestResource(status=None, body=None, json=None, headers=None) [source]

Заглушка-ресурс для функционального тестирования компонентов фреймворка.

Этот класс реализует простой тестовый ресурс, который можно расширить по мере необходимости для тестирования middleware, хуков и самого фреймворка Falcon.

Реализованы только методы on_get() и on_post() responder; при переопределении этих методов или добавлении дополнительных responder в дочерних классах, их можно декорировать с помощью хука falcon.testing.capture_responder_args() для захвата аргументов req, resp и params, которые передаются в responder. Responder также могут быть декорированы с помощью хука falcon.testing.set_resp_defaults() для установки свойств resp в значения по умолчанию status, body и header.

Ключевые аргументы:
  • status (строка) – Строка статуса по умолчанию для использования в ответах
  • body (строка) – Строка тела по умолчанию для использования в ответах
  • json (словарь) – Документ JSON по умолчанию для использования в ответах. Будет сериализован в строку и закодирован как UTF-8. Можно указать либо json, либо body, но не оба.
  • headers (словарь) – Набор дополнительных заголовков по умолчанию для включения в ответы
called

булево – Состоялось ли захват req/resp.

captured_req

falcon.Request – Последний объект Request, переданный в любой из методов responder.

captured_resp

falcon.Response – Последний объект Response, переданный в любой из методов responder.

captured_kwargs

словарь – Последний словарь kwargs, помимо req и resp, переданные в любой из методов responder.

class falcon.testing.StartResponseMock [source]

Заглушка, представляющая WSGI start_response вызываемую функцию.

call_count

целое число – Количество вызовов start_response.

status

строка – Строка HTTP-статуса, например, «785 TPS Cover Sheet not attached».

headers

список – Список исходных заголовков, переданных start_response, согласно PEP-333.

headers_dict

словарь – Заголовки в виде объекта типа dict, а не list, регистронезависимые.

END_OF_DOCUMENT_MARKER
falcon.testing.capture_responder_args(req, resp, resource, params) [source]

Передняя обработка для захвата аргументов обработчика.

Добавляет следующие атрибуты к классу ресурса подключённого обработчика:

  • captured_req
  • captured_resp
  • captured_kwargs
falcon.testing.rand_string(min, max) [source]

Возвращает случайную строку случайной длины.

Параметры:
  • min (int) – Минимальная длина возвращаемой строки, включительно
  • max (int) – Максимальная длина возвращаемой строки, включительно
falcon.testing.create_environ(path='/', query_string='', protocol='HTTP/1.1', scheme='http', host='falconframework.org', port=None, headers=None, app='', body='', method='GET', wsgierrors=None, file_wrapper=None) [source]

Создаёт имитационную среду PEP-3333 dict для моделирования WSGI-запросов.

Ключевые аргументы:
  • path (str) – Путь для запроса (по умолчанию ‘/’)
  • query_string (str) – Строка запроса для моделирования без ведущего ‘?’ (по умолчанию ‘’)
  • protocol (str) – HTTP протокол для моделирования (по умолчанию ‘HTTP/1.1’). Если установлено ‘HTTP/1.0’, заголовок Host не будет добавлен в среду.
  • scheme (str) – Схема URL, либо ‘http’, либо ‘https’ (по умолчанию ‘http’)
  • host (str) – Имя хоста для запроса (по умолчанию ‘falconframework.org’)
  • port (str) – TCP порт для моделирования. По умолчанию стандартный порт, используемый для заданной схемы (т.е., 80 для ‘http’ и 443 для ‘https’).
  • headers (dict) – Заголовки в виде dict или итерируемого объекта, возвращающего (ключ, значение) tuple‘s
  • app (str) – Значение для переменной среды SCRIPT_NAME, описанной в PEP-333: «начальная часть пути URL запроса, соответствующая объекту приложения, чтобы приложение знало своё виртуальное «местоположение». Может быть пустой строкой, если приложение соответствует «корню» сервера» (по умолчанию ‘’)
  • body (str) – Тело запроса (по умолчанию ‘’). Принимает как байтовые строки, так и строки Unicode. Строки Unicode кодируются как UTF-8 в запросе.
  • method (str) – HTTP метод (по умолчанию ‘GET’)
  • wsgierrors (io) – Поток, используемый как wsgierrors (по умолчанию sys.stderr)
  • file_wrapper – Функция, возвращающая итерируемый объект, который используется как значение для wsgi.file_wrapper в среде.
falcon.testing.redirected(*args, **kwds) [source]

Менеджер контекста для временного перенаправления stdout или stderr

Например:

with redirected(stderr=os.devnull):
...

Устаревшее

class falcon.testing.TestBase(methodName='runTest') [source]

Расширяет unittest для поддержки функциональных тестов WSGI.

Предупреждение

Этот класс устарел и будет удалён в будущей версии. Используйте вместо него TestCase.

Примечание

Если доступно, использует testtools вместо unittest.

Этот базовый класс предоставляет дополнительную инфраструктуру для тестов в стиле unittest, чтобы имитировать вызовы WSGI без запуска фактического веб-сервера. Просто наследуйте от этого класса в ваших тестовых классах вместо unittest.TestCase или testtools.TestCase.

api

falcon.API – Экземпляр API, на который нацелены имитируемые запросы. По умолчанию falcon.API().

srmock

falcon.testing.StartResponseMock – Предоставляет вызываемый объект, имитирующий поведение аргумента start_response, который сервер обычно передаёт в приложение WSGI. Объект-модель захватывает различные данные из ответа приложения на имитируемый запрос.

test_route

str – Простой сгенерированный путь, который тест может использовать для добавления маршрута в API.

api_class

псевдоним API

setUp() [source]

Инициализатор, в стиле unittest

simulate_request(path, decode=None, **kwargs) [source]

Имитирует запрос к self.api.

Параметры:

path (str) – Путь для запроса.

Ключевые аргументы:
  • decode (str) – Если это кодировка символов, например ‘utf-8’, simulate_request будет предполагать, что ответ — это строка одного байта и декодирует её как результат запроса, а не просто возвращает стандартный WSGI итерируемый объект.
  • kwargs (необязательно) – Такие же, как определены для falcon.testing.create_environ.
srmock_class

псевдоним StartResponseMock

tearDown() [source]

Деструктор, в стиле unittest

class falcon.testing.TestResource [source]

Заглушка-ресурс для функционального тестирования.

Предупреждение

Этот класс устарел и будет удалён в будущей версии. Используйте SimpleTestResource вместо него.

Этот класс реализует ответ on_get, собирает данные запроса и устанавливает тело и заголовки ответа.

Дочерние классы могут добавлять дополнительные методы и атрибуты по мере необходимости.

sample_status

str – HTTP-статус для установки в ответе

sample_body

str – Случайная строка тела для установки в ответе

resp_headers

dict – Пример заголовков для использования в ответе

req

falcon.Request – Объект запроса, переданный в on_get ответчик.

resp

falcon.Response – Объект ответа, переданный в on_get ответчик.

kwargs

dict – Параметры ключевых слов, переданные в on_get ответчик, если таковые имеются.

called

bool – True если on_get был когда-либо вызван; False в противном случае.

on_get(req, resp, **kwargs) [source]

Обработчик GET.

Собирает req, resp, и kwargs. Также настраивает образец ответа.

Параметры:
  • req – Экземпляр Falcon Request.
  • resp – Экземпляр Falcon Response.
  • kwargs – Значения URI шаблона в формате имя=значение, если они есть, а также любые дополнительные аргументы, введённые middleware.

© 2012–2016 by Rackspace Hosting, Inc. and other contributors
Licensed under the Apache License, Version 2.0.
https://falcon.readthedocs.io/en/1.3.0/api/testing.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API