def view_save_personal_settings(request, personal_settings_template): if request.method == 'GET': return view_get_personal_settings(request, personal_settings_template) userprofile = loggedin_userprofile(request) form = PersonalSettingsForm(post_data(request)) if form.is_valid(): name = form.cleaned_data.get('name') new_password = form.cleaned_data.get('new_password') slug = form.cleaned_data.get('slug') if userprofile.can_update_slug(): if slug: if UserProfile.objects.filter(slug=slug).count(): from users.messages import WEB_RESUME_URL_ALREADY_PICKED form._errors['slug'] = WEB_RESUME_URL_ALREADY_PICKED else: userprofile.update(name=name, slug=slug, password=new_password) from users.messages import ACCOUNT_SETTINGS_SAVED messages.success(request, ACCOUNT_SETTINGS_SAVED) else: from users.messages import INVALID_WEB_RESUME_URL messages.error(request, INVALID_WEB_RESUME_URL) else: userprofile.update(name=name, password=new_password) from users.messages import ACCOUNT_SETTINGS_SAVED messages.success(request, ACCOUNT_SETTINGS_SAVED) return response(request, personal_settings_template, {'personal_form':form})
def test_empty_form_submission(self): data = {'name':'', 'slug':'', 'new_password':''} form = PersonalSettingsForm(data) self.assertFalse(form.is_valid()) self.assertTrue(form.errors) self.assertTrue(form.errors.has_key('name')) self.assertFalse(form.errors.has_key('slug')) self.assertFalse(form.errors.has_key('new_password'))
def test_invalid_name_submission(self): invalid_names = ['', ' ', '*(*(*(*'] for name in invalid_names: form = PersonalSettingsForm({'name':name, 'slug':'somedomain', 'new_password':'******'}) self.assertFalse(form.is_valid()) self.assertTrue(form.errors) self.assertTrue(form.errors.has_key('name')) self.assertFalse(form.errors.has_key('slug')) self.assertFalse(form.errors.has_key('new_password'))
def test_valid_account_details_updation(self): data = {'name':'Nanda Kishore.B', 'slug':'madhavbnk', 'new_password':'******'} form = PersonalSettingsForm(data) self.assertTrue(form.is_valid()) self.assertFalse(form.errors)