Ejemplo n.º 1
0
    def test_limit_dict_for_stateful_resource(self):
        request = generate_request()
        columns = generate_columns()

        class Resource(YaatModelResource):
            class Meta:
                resource_name = 'test'
                stateful_init = True
                limit = 10
                limit_choices = [10, 20, 30]
        resource = Resource()

        post = {}
        form = YaatValidatorForm(post, request=request, columns=columns, resource=resource)
        self.assertTrue(form.is_valid())
        self.assertEqual(form.limit_dict(request, resource), {
            'limit': Resource.Meta.limit,
            'options': Resource.Meta.limit_choices
        })

        form.invalidate_state()  # Normally the resource of the form calls this method

        post = {'limit': 20}
        form = YaatValidatorForm(post, request=request, columns=columns, resource=resource)
        self.assertTrue(form.is_valid())
        self.assertEqual(form.limit_dict(request, resource), {
            'limit': post['limit'],
            'options': Resource.Meta.limit_choices
        })
Ejemplo n.º 2
0
    def test_invalidate_state(self):
        request = generate_request()
        columns = generate_columns()
        resource = StatefulResource()

        post = {}
        form = YaatValidatorForm(post, request=request, columns=columns, resource=resource)
        self.assertTrue(form.is_valid())
        self.assertIn(form.session_key(resource), request.session)

        form.invalidate_state()
        self.assertNotIn(form.session_key(resource), request.session)