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 })
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)