Ticket #6543 - Used resources not showing clusters that user has instances on, but...
[ganeti_webmgr.git] / django_test_tools / forms.py
blob940fb2f5a6af80f46a5383305e8126ec5d5f6918
2 class FormTestMixin():
3 """
4 Test mixin for testing forms
5 """
7 def assert_missing_fields(self, cls, data, fields=None):
8 """
9 Tests fields that should raise a required exception
11 @param cls - form class
12 @param data - dict of valid data
13 @param fields - list of field names that are required
14 """
15 fields = data.keys if fields is None else fields
17 # check required fields
18 for name in fields:
19 data_ = data.copy()
20 del data_[name]
21 form = cls(data_)
22 self.assertFalse(form.is_valid())
24 def assert_invalid_value(self, cls, data, fields):
25 """
26 Tests fields that should raise an error for a specific type of invalid
27 data.
29 @param cls - form class
30 @param data - dict of valid data
31 @param fields - list of dicts containing field name and values that result
32 in form errors.
33 """
34 # check required fields
35 for values in fields:
36 data_ = data.copy()
37 data_.update(values)
38 form = cls(data_)
39 self.assertFalse(form.is_valid())