def setUp(self):
     self.kurt = User.objects.get(username="******")
     self.dave = User.objects.get(username="******")
     self.dummy = User.objects.create_user("dummy",
             email="*****@*****.**", password="******")
     self.nirvana = Organization.objects.get(name="Nirvana")
     self.factory = RequestFactory()
     self.kurt_request = request_factory_login(self.factory, self.kurt)
     self.dave_request = request_factory_login(self.factory, self.dave)
     self.anon_request = request_factory_login(self.factory)
 def setUp(self):
     self.kurt = User.objects.get(username="******")
     self.dave = User.objects.get(username="******")
     self.dummy = User.objects.create_user(
         "dummy", email="*****@*****.**", password="******"
     )
     self.nirvana = Organization.objects.get(name="Nirvana")
     self.factory = RequestFactory()
     self.kurt_request = request_factory_login(self.factory, self.kurt)
     self.dave_request = request_factory_login(self.factory, self.dave)
     self.anon_request = request_factory_login(self.factory)
示例#3
0
 def test_register_existing(self):
     """Ensure that an existing user is redirected to login"""
     backend = RegistrationBackend()
     request = request_factory_login(self.factory)
     request.POST = QueryDict(
         "name=Mudhoney&slug=mudhoney&[email protected]")
     self.assertEqual(302, backend.create_view(request).status_code)
 def test_owner_edits_org(self):
     user = self.owner.user
     request = request_factory_login(self.factory, user)
     form = OrganizationForm(
         request,
         instance=self.org,
         data={
             "name": self.org.name,
             "slug": self.org.slug,
             "owner": self.owner.id
         },
     )
     self.assertTrue(form.is_valid())
     form = OrganizationForm(
         request,
         instance=self.org,
         data={
             "name": self.org.name,
             "slug": self.org.slug,
             "owner": self.admin.id
         },
     )
     self.assertTrue(form.is_valid())
     form.save()
     self.assertEqual(self.org.owner.organization_user, self.admin)
 def test_save_org_form(self):
     request = request_factory_login(self.factory, self.owner.user)
     form = OrganizationForm(
         request,
         instance=self.org,
         data={"name": self.org.name, "slug": self.org.slug, "owner": self.owner.pk},
     )
     self.assertTrue(form.is_valid())
     form.save()
示例#6
0
 def test_add_user_already_in_organization(self):
     admin = self.org.organization_users.get(user__username="******")
     request = request_factory_login(self.factory, self.owner.user)
     form = OrganizationUserAddForm(
         request=request,
         organization=self.org,
         data={"email": admin.user.email},
     )
     self.assertFalse(form.is_valid())
示例#7
0
 def test_get_org_user_delete(self, rf, org_organization, account_user,
                              extra_org_user):
     request = request_factory_login(rf, user=account_user)
     kwargs = {
         "organization_pk": org_organization.pk,
         "user_pk": extra_org_user.pk
     }
     response = base.BaseOrganizationUserDelete.as_view()(request, **kwargs)
     assert response.status_code == 200
 def test_save_org_user_add_form(self):
     request = request_factory_login(self.factory, self.owner.user)
     form = OrganizationUserAddForm(
         request=request,
         organization=self.org,
         data={"email": "*****@*****.**", "is_admin": False},
     )
     self.assertTrue(form.is_valid())
     form.save()
 def test_save_org_user_add_form(self):
     request = request_factory_login(self.factory, self.owner.user)
     form = OrganizationUserAddForm(request=request,
                                    organization=self.org,
                                    data={
                                        'email': '*****@*****.**',
                                        'is_admin': False
                                    })
     self.assertTrue(form.is_valid())
     form.save()
示例#10
0
 def test_delete_organization_with_post(self, rf, org_organization,
                                        account_user):
     request = request_factory_login(rf,
                                     user=account_user,
                                     method="post",
                                     path="/")
     kwargs = {"organization_pk": org_organization.pk}
     response = base.BaseOrganizationDelete.as_view()(request, **kwargs)
     assert response.status_code == 302
     with pytest.raises(ObjectDoesNotExist):
         org_organization.refresh_from_db()
 def test_save_org_form(self):
     request = request_factory_login(self.factory, self.owner.user)
     form = OrganizationForm(request,
                             instance=self.org,
                             data={
                                 'name': self.org.name,
                                 'slug': self.org.slug,
                                 'owner': self.owner.id
                             })
     self.assertTrue(form.is_valid())
     form.save()
示例#12
0
 def test_save_org_form(self):
     request = request_factory_login(self.factory, self.owner.user)
     form = OrganizationForm(
         request,
         instance=self.org,
         data={
             "name": self.org.name,
             "slug": self.org.slug,
             "owner": self.owner.pk
         },
     )
     self.assertTrue(form.is_valid())
     form.save()
示例#13
0
 def test_multiple_users_exist(self):
     User.objects.create_user("asdkjf",
                              password="******",
                              email="*****@*****.**")
     User.objects.create_user("asdkjf1",
                              password="******",
                              email="*****@*****.**")
     request = request_factory_login(self.factory, self.owner.user)
     form = OrganizationUserAddForm(
         request=request,
         organization=self.org,
         data={"email": "*****@*****.**"},
     )
     self.assertFalse(form.is_valid())
示例#14
0
 def test_anon_user_signup_base_class_has_no_success_url(self, rf):
     """"""
     request = request_factory_login(
         rf,
         method="post",
         path="/",
         data={
             "name": "An Association of Very Interesting People",
             "slug": "people",
             "email": "*****@*****.**",
         },
     )
     with pytest.raises(ImproperlyConfigured):
         base.OrganizationSignup.as_view()(request)
示例#15
0
 def test_user_create_post(self):
     request = request_factory_login(
         self.factory,
         self.kurt,
         path="/",
         method="post",
         data={"email": "*****@*****.**"},
     )
     kwargs = {"organization_pk": self.nirvana.pk}
     self.assertEqual(
         302,
         base.BaseOrganizationUserCreate.as_view()(request,
                                                   **kwargs).status_code,
     )
示例#16
0
 def test_delete_organization_user_with_post(self, rf, org_organization,
                                             account_user, extra_org_user):
     request = request_factory_login(rf,
                                     user=account_user,
                                     method="post",
                                     path="/")
     kwargs = {
         "organization_pk": org_organization.pk,
         "user_pk": extra_org_user.pk
     }
     response = base.BaseOrganizationUserDelete.as_view()(request, **kwargs)
     assert response.status_code == 302
     with pytest.raises(ObjectDoesNotExist):
         OrganizationUser.objects.get(user=extra_org_user)
 def test_admin_edits_org(self):
     user = self.admin.user
     request = request_factory_login(self.factory, user)
     form = OrganizationForm(
         request,
         instance=self.org,
         data={"name": self.org.name, "slug": self.org.slug, "owner": self.owner.pk},
     )
     self.assertTrue(form.is_valid())
     form = OrganizationForm(
         request,
         instance=self.org,
         data={"name": self.org.name, "slug": self.org.slug, "owner": self.admin.pk},
     )
     self.assertFalse(form.is_valid())
示例#18
0
 def test_add_organization_for_new_user(self):
     user = User.objects.create_user("timmy",
                                     password="******",
                                     email="*****@*****.**")
     request = request_factory_login(self.factory, user)
     form = OrganizationAddForm(
         request,
         data={
             "slug": "new_org",
             "name": "New Org",
             "email": "*****@*****.**",
         },
     )
     self.assertTrue(form.is_valid())
     new_org = form.save()
     self.assertFalse(new_org.is_active)  # Inactive until confirmation
示例#19
0
 def test_create_new_org(self, rf, account_user):
     request = request_factory_login(
         rf,
         user=account_user,
         method="post",
         path="/",
         data={
             "name": "Vizsla Club",
             "slug": "vizsla",
             "email": "*****@*****.**"
         },
     )
     response = base.BaseOrganizationCreate.as_view()(request)
     assert response.status_code == 302
     assert response["Location"] == reverse("organization_list")
     assert Organization.objects.get(slug="vizsla")
 def test_admin_edits_org(self):
     user = self.admin.user
     request = request_factory_login(self.factory, user)
     form = OrganizationForm(request,
                             instance=self.org,
                             data={
                                 'name': self.org.name,
                                 'slug': self.org.slug,
                                 'owner': self.owner.id
                             })
     self.assertTrue(form.is_valid())
     form = OrganizationForm(request,
                             instance=self.org,
                             data={
                                 'name': self.org.name,
                                 'slug': self.org.slug,
                                 'owner': self.admin.id
                             })
     self.assertFalse(form.is_valid())
示例#21
0
    def test_anon_user_can_signup(self, rf):
        """"""
        class SignupView(base.OrganizationSignup):
            success_url = "/"

        request = request_factory_login(
            rf,
            method="post",
            path="/",
            data={
                "name": "An Association of Very Interesting People",
                "slug": "people",
                "email": "*****@*****.**",
            },
        )
        response = SignupView.as_view()(request)
        assert response.status_code == 302

        # Verify its in the database
        Organization.objects.get(slug="people", is_active=False)
示例#22
0
 def test_admin_edits_org(self):
     user = self.admin.user
     request = request_factory_login(self.factory, user)
     form = OrganizationForm(
         request,
         instance=self.org,
         data={
             "name": self.org.name,
             "slug": self.org.slug,
             "owner": self.owner.pk
         },
     )
     self.assertTrue(form.is_valid())
     form = OrganizationForm(
         request,
         instance=self.org,
         data={
             "name": self.org.name,
             "slug": self.org.slug,
             "owner": self.admin.pk
         },
     )
     self.assertFalse(form.is_valid())
 def test_register_authenticated(self):
     """Ensure an already authenticated user is redirected"""
     backend = RegistrationBackend()
     request = request_factory_login(self.factory, self.user)
     self.assertEqual(302, backend.create_view(request).status_code)
示例#24
0
 def test_register_authenticated(self):
     """Ensure an already authenticated user is redirected"""
     backend = RegistrationBackend()
     request = request_factory_login(self.factory, self.user)
     self.assertEqual(302, backend.create_view(request).status_code)
示例#25
0
 def test_get_org_create_view(self, rf):
     request = request_factory_login(rf)
     assert base.BaseOrganizationCreate.as_view()(
         request).status_code == 200
示例#26
0
 def test_anon_user_can_access_signup_view(self, rf):
     """"""
     request = request_factory_login(rf)
     assert base.OrganizationSignup.as_view()(request).status_code == 200
示例#27
0
 def test_authenticated_user_is_redirected_from_signup_view(
         self, rf, account_user):
     request = request_factory_login(rf, account_user)
     assert base.OrganizationSignup.as_view()(request).status_code == 302
 def test_register_existing(self):
     """Ensure that an existing user is redirected to login"""
     backend = RegistrationBackend()
     request = request_factory_login(self.factory)
     request.POST = QueryDict("name=Mudhoney&slug=mudhoney&[email protected]")
     self.assertEqual(302, backend.create_view(request).status_code)