def test_signup(self): url = reverse('signup') response = self.client.get(url) self.assertEqual(response.status_code, 200) data = { 'username': '******', 'email': '*****@*****.**', 'first_name': 'Test', 'last_name': 'User', 'latitude': '45', 'longitude': '2', 'country': 'FR', 'location_description': 'Somewhere', 'privacy_search': 'public', 'privacy_email': 'private', 'privacy_im': 'private', 'privacy_irctrack': 'public', } response = self.client.post(url, data) self.assertEqual(response.status_code, 200) self.assertEqual(User.objects.count(), 3) data['password1'] = 'secret' data['password2'] = 'othersecret' response = self.client.post(url, data) self.assertEqual(response.status_code, 200) self.assertEqual(User.objects.count(), 3) data['region'] = 'AL' response = self.client.post(url, data) self.assertEqual(response.status_code, 200) self.assertEqual(User.objects.count(), 3) self.assertFormError(response, 'form', 'region', ('The region you selected does not match the ' 'country')) del data['region'] data['password2'] = 'secret' response = self.client.post(url, data, follow=True) self.assertEqual(response.status_code, 200) self.assertEqual(User.objects.count(), 4) created = User.objects.get(username='******') self.assertTrue(created.check_password('secret')) self.assertEqual(len(response.redirect_chain), 1) # Logged in users go back to the homepage response = self.client.get(url) self.assertEqual(response.status_code, 302) self.client.session.flush() # Registration with an OpenID shouldn't ask for a password factory = RequestFactory() request = prepare_request(factory.get(url)) response = signup(request) response.render() self.assertContains(response, 'foo.example.com') del data['password1'] del data['password2'] data['username'] = '******' data['email'] = '*****@*****.**' request = prepare_request(factory.post(url, data)) response = signup(request) self.assertEqual(response.status_code, 302) self.assertEqual(response['Location'], reverse('user_profile', args=['meh'])) self.assertEqual(User.objects.count(), 5) self.assertEqual(DjangoPerson.objects.count(), 4)
def test_signup(self): url = reverse("signup") response = self.client.get(url) self.assertEqual(response.status_code, 200) data = { "username": "******", "email": "*****@*****.**", "first_name": "Test", "last_name": "User", "latitude": "45", "longitude": "2", "country": "FR", "location_description": "Somewhere", "privacy_search": "public", "privacy_email": "private", "privacy_im": "private", "privacy_irctrack": "public", } response = self.client.post(url, data) self.assertEqual(response.status_code, 200) self.assertEqual(User.objects.count(), 3) data["password1"] = "secret" data["password2"] = "othersecret" response = self.client.post(url, data) self.assertEqual(response.status_code, 200) self.assertEqual(User.objects.count(), 3) data["region"] = "AL" response = self.client.post(url, data) self.assertEqual(response.status_code, 200) self.assertEqual(User.objects.count(), 3) self.assertFormError(response, "form", "region", ("The region you selected does not match the " "country")) del data["region"] data["password2"] = "secret" response = self.client.post(url, data, follow=True) self.assertEqual(response.status_code, 200) self.assertEqual(User.objects.count(), 4) created = User.objects.get(username="******") self.assertTrue(created.check_password("secret")) self.assertEqual(len(response.redirect_chain), 1) # Logged in users go back to the homepage response = self.client.get(url) self.assertEqual(response.status_code, 302) self.client.session.flush() # Registration with an OpenID shouldn't ask for a password factory = RequestFactory() request = prepare_request(factory.get(url)) response = signup(request) response.render() self.assertTrue("foo.example.com" in response.content) del data["password1"] del data["password2"] data["username"] = "******" data["email"] = "*****@*****.**" request = prepare_request(factory.post(url, data)) response = signup(request) self.assertEqual(response.status_code, 302) self.assertEqual(response["Location"], reverse("user_profile", args=["meh"])) self.assertEqual(User.objects.count(), 5) self.assertEqual(DjangoPerson.objects.count(), 4)