Commit ffdd0fc448ae33be290811d17059bd6a56f50d01

Authored by Ailson da Cruz
1 parent 64e8f587

Adding test_regiater_user_error #5

Showing 2 changed files with 50 additions and 1 deletions   Show diff stats
core/forms.py
... ... @@ -9,6 +9,12 @@ class RegisterUserForm(forms.ModelForm):
9 9 # birth_date = forms.DateField(widget=forms.SelectDateWidget())
10 10 MIN_LENGTH = 8
11 11  
  12 + def clean_email(self):
  13 + email = self.cleaned_data['email']
  14 + if User.objects.filter(email = email).exists():
  15 + raise forms.ValidationError('Já existe um usuário cadastrado com este E-mail')
  16 + return email
  17 +
12 18 def clean_password(self):
13 19 password = self.cleaned_data.get('password')
14 20  
... ... @@ -29,7 +35,7 @@ class RegisterUserForm(forms.ModelForm):
29 35 password2 = self.cleaned_data.get("password2")
30 36  
31 37 if password and password2 and password != password2:
32   - raise forms.ValidationError('A confirmmacao de senha esta incorreta')
  38 + raise forms.ValidationError('A confirmacão da senha está incorreta')
33 39 return password2
34 40  
35 41 def save(self, commit=True):
... ...
core/tests.py
... ... @@ -60,6 +60,49 @@ class RegisterUserTestCase(TestCase):
60 60 self.assertEqual(response.status_code, 302)
61 61 self.assertEqual(User.objects.count(), 1)
62 62  
  63 + def test_register_error(self):
  64 + response = self.client.get(self.url)
  65 + self.assertEquals(response.status_code, 200)
  66 +
  67 + data = {
  68 + 'username': 'testeamadeus',
  69 + 'email': 'teste@amadeus.com',
  70 + 'password': 'aminhasenha1',
  71 + 'password2': 'aminhasenha',
  72 + 'name': 'Teste Amadeus',
  73 + 'city': 'Praia',
  74 + 'state': 'PE',
  75 + 'gender': 'F',
  76 + }
  77 + response = self.client.post(self.url, data)
  78 + self.assertFormError(response, 'form', 'password2', 'A confirmacão da senha está incorreta')
  79 +
  80 + data = {
  81 + 'username': 'testeamadeus',
  82 + 'email': 'teste.amadeus.com',
  83 + 'password': 'aminhasenha1',
  84 + 'password2': 'aminhasenha',
  85 + 'name': 'Teste Amadeus',
  86 + 'city': 'Praia',
  87 + 'state': 'PE',
  88 + 'gender': 'F',
  89 + }
  90 + response = self.client.post(self.url, data)
  91 + self.assertFormError(response, 'form', 'email', 'Insira um endereço de email válido.')
  92 +
  93 + data = {
  94 + 'username': '',
  95 + 'email': 'teste@amadeus.com',
  96 + 'password': 'aminhasenha1',
  97 + 'password2': 'aminhasenha',
  98 + 'name': 'Teste Amadeus',
  99 + 'city': 'Praia',
  100 + 'state': 'PE',
  101 + 'gender': 'F',
  102 + }
  103 + response = self.client.post(self.url, data)
  104 + self.assertFormError(response, 'form', 'username', 'Este campo é obrigatório.')
  105 +
63 106 class RememberPasswordTestCase(TestCase):
64 107  
65 108 def setUp(self):
... ...