Commit d7d4e2dbc8ea46771ddd5029c9c7d6f02e5fda18
1 parent
e19d0e17
Exists in
master
and in
5 other branches
Test edit user #7
Showing
6 changed files
with
90 additions
and
3 deletions
Show diff stats
core/tests.py
| ... | ... | @@ -59,3 +59,25 @@ class RegisterUserTestCase(TestCase): |
| 59 | 59 | self.assertRedirects(response, 'http://localhost%s' % reverse('core:home')) |
| 60 | 60 | self.assertEqual(response.status_code, 302) |
| 61 | 61 | self.assertEqual(User.objects.count(), 1) |
| 62 | + | |
| 63 | +class UpdateUserTestCase(TestCase): | |
| 64 | + | |
| 65 | + def setUp(self): | |
| 66 | + self.client = Client() | |
| 67 | + | |
| 68 | + self.url = reverse('users:update_user') | |
| 69 | + | |
| 70 | + def test_get_post(self): | |
| 71 | + data={ | |
| 72 | + 'username': 'testeamadeus', | |
| 73 | + 'email': 'teste@amadeus.com', | |
| 74 | + 'name': 'Teste Amadeus', | |
| 75 | + 'city': 'Praia', | |
| 76 | + 'state': 'PE', | |
| 77 | + 'gender': 'F', | |
| 78 | + } | |
| 79 | + # self.assertRedirects(response1, reverse('app:index')) | |
| 80 | + response = self.client.post(self.url, data) | |
| 81 | + self.assertEqual(response.status_code, 302) | |
| 82 | + response = self.client.get(self.url) | |
| 83 | + self.assertEqual(response.status_code, 302) | ... | ... |
core/views.py
| ... | ... | @@ -2,10 +2,11 @@ from rolepermissions.shortcuts import assign_role |
| 2 | 2 | from django.utils.translation import ugettext_lazy as _ |
| 3 | 3 | from django.core.urlresolvers import reverse_lazy, reverse |
| 4 | 4 | from django.contrib.auth import authenticate, login as login_user |
| 5 | +from django.contrib.auth.mixins import LoginRequiredMixin | |
| 5 | 6 | from .decorators import log_decorator |
| 6 | 7 | from django.contrib import messages |
| 7 | 8 | from django.shortcuts import render, redirect |
| 8 | -from django.views.generic import CreateView | |
| 9 | +from django.views.generic import CreateView, UpdateView | |
| 9 | 10 | from django.http import HttpResponse |
| 10 | 11 | from .forms import RegisterUserForm |
| 11 | 12 | from users.models import User |
| ... | ... | @@ -31,6 +32,7 @@ class RegisterUser(CreateView): |
| 31 | 32 | |
| 32 | 33 | return super(RegisterUser, self).form_valid(form) |
| 33 | 34 | |
| 35 | + | |
| 34 | 36 | def create_account(request): |
| 35 | 37 | return render(request, "create_account.html") |
| 36 | 38 | ... | ... |
logs/log_file_06-09-2016.txt
| ... | ... | @@ -49,3 +49,39 @@ |
| 49 | 49 | 06/09/2016 01:46:18 - test - Acessou home |
| 50 | 50 | 06/09/2016 01:46:28 - test - Entrou no sistema |
| 51 | 51 | 06/09/2016 01:46:28 - test - Acessou home |
| 52 | +06/09/2016 02:39:03 - test - Entrou no sistema | |
| 53 | +06/09/2016 02:39:03 - test - Acessou home | |
| 54 | +06/09/2016 02:39:41 - test - Entrou no sistema | |
| 55 | +06/09/2016 02:39:41 - test - Acessou home | |
| 56 | +06/09/2016 02:40:57 - test - Entrou no sistema | |
| 57 | +06/09/2016 02:40:57 - test - Acessou home | |
| 58 | +06/09/2016 02:41:50 - test - Entrou no sistema | |
| 59 | +06/09/2016 02:41:50 - test - Acessou home | |
| 60 | +06/09/2016 02:46:53 - test - Entrou no sistema | |
| 61 | +06/09/2016 02:46:53 - test - Acessou home | |
| 62 | +06/09/2016 02:47:14 - test - Entrou no sistema | |
| 63 | +06/09/2016 02:47:14 - test - Acessou home | |
| 64 | +06/09/2016 02:50:33 - test - Entrou no sistema | |
| 65 | +06/09/2016 02:50:33 - test - Acessou home | |
| 66 | +06/09/2016 02:52:54 - test - Entrou no sistema | |
| 67 | +06/09/2016 02:52:54 - test - Acessou home | |
| 68 | +06/09/2016 02:57:03 - test - Entrou no sistema | |
| 69 | +06/09/2016 02:57:03 - test - Acessou home | |
| 70 | +06/09/2016 03:02:15 - test - Entrou no sistema | |
| 71 | +06/09/2016 03:02:15 - test - Acessou home | |
| 72 | +06/09/2016 16:20:42 - test - Entrou no sistema | |
| 73 | +06/09/2016 16:20:42 - test - Acessou home | |
| 74 | +06/09/2016 16:29:26 - test - Entrou no sistema | |
| 75 | +06/09/2016 16:29:26 - test - Acessou home | |
| 76 | +06/09/2016 16:31:14 - test - Entrou no sistema | |
| 77 | +06/09/2016 16:31:14 - test - Acessou home | |
| 78 | +06/09/2016 16:33:06 - test - Entrou no sistema | |
| 79 | +06/09/2016 16:33:06 - test - Acessou home | |
| 80 | +06/09/2016 16:33:26 - test - Entrou no sistema | |
| 81 | +06/09/2016 16:33:26 - test - Acessou home | |
| 82 | +06/09/2016 16:33:36 - test - Entrou no sistema | |
| 83 | +06/09/2016 16:33:36 - test - Acessou home | |
| 84 | +06/09/2016 16:34:10 - test - Entrou no sistema | |
| 85 | +06/09/2016 16:34:10 - test - Acessou home | |
| 86 | +06/09/2016 16:34:29 - test - Entrou no sistema | |
| 87 | +06/09/2016 16:34:29 - test - Acessou home | ... | ... |
users/forms.py
| ... | ... | @@ -31,4 +31,11 @@ class EditUserForm(forms.ModelForm): |
| 31 | 31 | |
| 32 | 32 | class Meta: |
| 33 | 33 | model = User |
| 34 | - fields = ['username', 'name', 'email', 'birth_date', 'city', 'state', 'gender', 'cpf', 'phone', 'image'] | |
| 35 | 34 | \ No newline at end of file |
| 35 | + fields = ['username', 'name', 'email', 'birth_date', 'city', 'state', 'gender', 'cpf', 'phone', 'image'] | |
| 36 | + | |
| 37 | +# Ailson | |
| 38 | +class UpdateUserForm(forms.ModelForm): | |
| 39 | + | |
| 40 | + class Meta: | |
| 41 | + model = User | |
| 42 | + fields = ['username', 'name', 'email', 'city', 'state', 'birth_date', 'gender', 'cpf', 'phone', 'image'] | ... | ... |
users/urls.py
| ... | ... | @@ -9,4 +9,6 @@ urlpatterns = [ |
| 9 | 9 | url(r'^usuario/dados/(?P<username>[\w_-]+)/$', views.View.as_view(), name='view'), |
| 10 | 10 | url(r'^perfil/$', views.Profile.as_view(), name='profile'), |
| 11 | 11 | url(r'^perfil/editar/(?P<username>[\w_-]+)/$', views.EditProfile.as_view(), name='edit_profile'), |
| 12 | + # | |
| 13 | + url(r'^profile/update/$', views.UpdateUser.as_view(), name='update_user'), | |
| 12 | 14 | ] | ... | ... |
users/views.py
| ... | ... | @@ -7,7 +7,7 @@ from django.core.urlresolvers import reverse_lazy |
| 7 | 7 | from django.utils.translation import ugettext_lazy as _ |
| 8 | 8 | from rolepermissions.shortcuts import assign_role |
| 9 | 9 | from .models import User |
| 10 | -from .forms import UserForm, ProfileForm | |
| 10 | +from .forms import UserForm, ProfileForm, UpdateUserForm | |
| 11 | 11 | |
| 12 | 12 | class UsersListView(HasRoleMixin, LoginRequiredMixin, generic.ListView): |
| 13 | 13 | |
| ... | ... | @@ -125,3 +125,21 @@ class EditProfile(LoginRequiredMixin, generic.UpdateView): |
| 125 | 125 | messages.success(self.request, _('Profile edited successfully!')) |
| 126 | 126 | |
| 127 | 127 | return super(EditProfile, self).form_valid(form) |
| 128 | + | |
| 129 | +class UpdateUser(LoginRequiredMixin, generic.edit.UpdateView): | |
| 130 | + allowed_roles = ['student'] | |
| 131 | + login_url = reverse_lazy("core:home") | |
| 132 | + # template_name = 'users/edit_profile.html' | |
| 133 | + form_class = UpdateUserForm | |
| 134 | + success_url = reverse_lazy('app:index') | |
| 135 | + | |
| 136 | + def get_object(self): | |
| 137 | + user = get_object_or_404(User, username = self.request.user.username) | |
| 138 | + return user | |
| 139 | + | |
| 140 | + def form_valid(self, form): | |
| 141 | + form.save() | |
| 142 | + messages.success(self.request, _('Profile edited successfully!')) | |
| 143 | + | |
| 144 | + return super(UpdateUser, self).form_valid(form) | |
| 145 | + | ... | ... |