Как протестировать переменные контекста шаблона с помощью Flask

Тестовый клиент Django возвращает тестовый объект Response, который включает в себя переменные контекста шаблона, которые использовались для рендеринга шаблона. https://docs.djangoproject.com/en/dev/topics/testing/#django.test.client.Response.context

Как я могу получить доступ к переменным контекста шаблона во время тестирования во Flask?

Пример вида:

@pgt.route('/myview')
def myview():
    context = {
        'var1': 'value 1',
        'var2': 'value 2',
        'var3': 'value 3',
    }
    return render_template('mytemplate.html', **context)

Пример проверки:

class MyViewTestCase(unittest.TestCase):
    def setUp(self):
        self.app = create_app()
        self.client = self.app.test_client()

    def test_get_success(self):
        response = self.client.get('/pgt/myview')

        # I don't want to do this
        self.assertIn('value 1', response.data)

        # I want to do something like this
        self.assertEqual(response.template_context['var1'], 'value 1')

10
задан saltycrane 21 May 2012 в 23:12
поделиться