Как написать модульные тесты для приложения web.py с промежуточным ПО - PullRequest
0 голосов
/ 22 февраля 2020

Я пытался протестировать приложение, созданное с использованием web.py framework. У меня есть промежуточное программное обеспечение с именем ThisMiddleware, которое я хотел бы проверить. Есть ли способ протестировать приложение с подключенным к нему промежуточным программным обеспечением?

Я обнаружил модуль с именем webtest, который приятно оборачивает приложение wsgi для тестирования. Я хочу знать следующее: можем ли мы сделать это так, как мы обычно тестируем приложение web py?

В документации по web py есть пример с модулем paste.fixture.

Я полностью согласен с использованием модуля веб-теста, но если бы был способ сделать это непосредственно на объекте веб-приложения, мне не пришлось бы использовать дополнительный модуль.

Код -

from web import application

....
....

def test_this_url(self):
    # How do I attach a middleware to this app 
    # so that doing app.request(url) goes through 
    # the middleware
    app = application(route, handler)
    # ------------------------------------
    # This does not work
    # middleware = [ThisMiddleware]
    # app = application(route, handler).wsgifunc(*middleware)
    # app here is a middleware object
    # app.request(url) does not work now
    # ------------------------------------
    response = app.request(url)
    self.assert(response.data, "Hello")
...
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...