示例#1
0
 def test_person_add_post_by_anonymous(self):
     company = factories.CompanyFactory()
     url = self.reverse('person_add', pk=company.pk)
     form = factories.person_form()
     resp = self.app.post(url, params=form, expect_errors=True)
     self.assertEqual(resp.status_int, 403)
     self.assertEqual(Person.objects.count(), 0)
示例#2
0
 def test_person_add_post_by_staff(self):
     user = factories.StaffUserFactory()
     company = factories.CompanyFactory()
     url = self.reverse('person_add', pk=company.pk)
     form = factories.person_form()
     resp = self.app.post(url, params=form, user=user.username, expect_errors=True)
     self.assertEqual(resp.status_int, 403)
     self.assertEqual(Person.objects.count(), 0)
示例#3
0
 def test_person_add_post_by_staff(self):
     factories.SiteConfigurationFactory()
     user = factories.StaffUserFactory()
     company = factories.CompanyFactory()
     url = self.reverse('management:persons_add', pk=company.pk)
     form = factories.person_form()
     resp = self.app.post(url, user=user, params=form, expect_errors=True)
     self.assertEqual(resp.status_int, 403)
     self.assertEqual(Person.objects.count(), 0)
示例#4
0
 def test_person_update_post_by_anonymous(self):
     factories.SiteConfigurationFactory()
     person = factories.PersonFactory()
     form = factories.person_form(person.company.pk)
     url = self.reverse('person_update', pk=person.pk)
     resp = self.app.post(url, params=form, expect_errors=True)
     self.assertEqual(resp.status_int, 403)
     new_person = Person.objects.first()
     self.assertNotEqual(new_person.first_name, form['first_name'])
     self.assertEqual(new_person.first_name, person.first_name)
示例#5
0
 def test_person_update_post_by_anonymous(self):
     person = factories.PersonFactory()
     form = factories.person_form(person.company.pk)
     url = self.reverse('management:persons_edit', pk=person.pk)
     resp = self.app.post(url, params=form, expect_errors=True)
     self.assertEqual(resp.status_int, 403)
     self.assertEqual(Person.objects.count(), 1)
     new_person = Person.objects.first()
     self.assertEqual(person, Person.objects.first())
     self.assertEqual(person.first_name, new_person.first_name)
示例#6
0
 def test_person_add_post_by_superuser(self):
     factories.SiteConfigurationFactory()
     user = factories.SuperUserFactory()
     company = factories.CompanyFactory()
     url = self.reverse('management:persons_add', pk=company.pk)
     form = factories.person_form()
     resp = self.app.post(url, params=form, user=user.username)
     self.assertRedirects(resp, self.reverse('management:companies_view',
                                             **{'pk': company.pk}))
     self.assertEqual(Person.objects.count(), 1)
     self.assertEqual(Person.objects.first().company.pk, company.pk)
示例#7
0
 def test_person_add_post_by_bdr_group(self):
     factories.SiteConfigurationFactory()
     user = factories.BDRGroupUserFactory()
     company = factories.CompanyFactory()
     url = self.reverse('person_add', pk=company.pk)
     form = factories.person_form()
     resp = self.app.post(url, user=user.username, params=form)
     self.assertRedirects(resp, self.reverse('company',
                                             **{'pk': company.pk}))
     self.assertEqual(Person.objects.count(), 1)
     self.assertEqual(Person.objects.first().company.pk, company.pk)
示例#8
0
    def test_add_person_to_missing_company(self):
        user = factories.SuperUserFactory()
        url = self.reverse('management:persons_add', pk=123)
        form = factories.person_form()

        resp = self.app.get(url, user=user.username, expect_errors=True)
        self.assertEqual(resp.status_int, 404)

        resp = self.app.post(url, params=form, user=user.username,
                             expect_errors=True)
        self.assertEqual(resp.status_int, 404)
示例#9
0
 def test_person_update_post_by_superuser(self):
     user = factories.SuperUserFactory()
     person = factories.PersonFactory()
     form = factories.person_form(person.company.pk)
     url = self.reverse('management:persons_edit', pk=person.pk)
     resp = self.app.post(url, params=form, user=user.username)
     self.assertRedirects(resp, self.reverse('management:persons_view',
                                             **{'pk': person.pk}))
     self.assertEqual(Person.objects.count(), 1)
     new_person = Person.objects.first()
     self.assertEqual(new_person.first_name, form['first_name'])
     self.assertEqual(new_person.company.pk, form['company'])
示例#10
0
 def test_person_update_post_by_superuser(self):
     factories.SiteConfigurationFactory()
     user = factories.SuperUserFactory()
     person = factories.PersonFactory()
     form = factories.person_form(person.company.pk)
     url = self.reverse('person_update', pk=person.pk)
     resp = self.app.post(url, params=form, user=user.username)
     self.assertRedirects(resp, self.reverse('person',
                                             **{'pk': person.pk}))
     self.assertEqual(Person.objects.count(), 1)
     new_person = Person.objects.first()
     self.assertEqual(new_person.first_name, form['first_name'])
     self.assertEqual(person.company, new_person.company)