def test_validation_fails_for_same_name_variables(self): variables_requests = [ ( "name=test&variables-0-name=var_1&variables-2-0-name=var_1%^", u'The variable name "var_1" is used multiple times.', ), ( "name=test&variables-0-name=var_1&variables-2-0-name=var_1%^&" "variables-1-name=var2&variables-2-name=var2", u'The variable names "var_1, var2" are used multiple times.', ), ( "name=test&variables-0-name=var_1&variables-2-0-name=var_1%^&" "variables-1-name=var_1", u'The variable name "var_1" is used multiple times.', ), ( "name=test&variables-0-name=var_1&variables-2-0-name=var_1%^&" "variables-1-name=var2&variables-2-name=var2&variables-3-name=var2", u'The variable names "var_1, var2" are used multiple times.', ), ] for request, expected_error in variables_requests: form = SnippetForm(http.QueryDict(request)) self.assertFalse(form.is_valid()) self.assertDictEqual(form.errors, {"__all__": [expected_error]})
def test_validation_passes_for_correct_variables(self): valid_variable_requests = [ "name=test&variables-0-name=correct_var_1&variables-1-name=also_correct%$^^ ", "name=test&variables-0-name=simple", "name=test&variables-0-name=standard&variables-2-0-name=dropdown", ] for valid_variable_request in valid_variable_requests: form = SnippetForm(http.QueryDict(valid_variable_request)) self.assertTrue(form.is_valid(), "{} request should be valid".format(valid_variable_requests))
def test_validation_passes_for_correct_variables(self): valid_variable_requests=[ 'name=test&variables-0-name=correct_var_1&variables-1-name=also_correct%$^^ ', 'name=test&variables-0-name=simple', 'name=test&variables-0-name=standard&variables-2-0-name=dropdown' ] for valid_variable_request in valid_variable_requests: form = SnippetForm(http.QueryDict(valid_variable_request)) self.assertTrue(form.is_valid(), '{} request should be valid'.format(valid_variable_requests))
def test_validation_fails_for_same_name_variables(self): variables_requests = [ ('name=test&variables-0-name=var_1&variables-2-0-name=var_1%^', u'The variable name "var_1" is used multiple times.'), ('name=test&variables-0-name=var_1&variables-2-0-name=var_1%^&' 'variables-1-name=var2&variables-2-name=var2', u'The variable names "var_1, var2" are used multiple times.'), ('name=test&variables-0-name=var_1&variables-2-0-name=var_1%^&' 'variables-1-name=var_1', u'The variable name "var_1" is used multiple times.'), ('name=test&variables-0-name=var_1&variables-2-0-name=var_1%^&' 'variables-1-name=var2&variables-2-name=var2&variables-3-name=var2', u'The variable names "var_1, var2" are used multiple times.') ] for request, expected_error in variables_requests: form = SnippetForm(http.QueryDict(request)) self.assertFalse(form.is_valid()) self.assertDictEqual(form.errors, {'__all__': [expected_error]})