Esempio n. 1
0
    def tjest_detail_with_guest(self):
        experiment = ExperimentFactory(lab=self.lab, owners=[self.guest.pk])
        unit = UnitFactory(experiments=[experiment], lab=self.lab, user=self.owner)
        url = reverse('experiments:detail', kwargs={'lab_pk': self.lab.pk, 'pk': experiment.pk})

        resp = self.client.get(url, follow=True)
        self.assertEqual(resp.status_code, 200)
        self.assertContains(resp, _('Login'))

        self.client.login(username=self.guest.email, password='******')
        resp = self.client.get(url, follow=True)
        self.assertEqual(resp.status_code, 200)
        self.assertContains(resp, unit.get_absolute_url(), 1)

        self.client.login(username=self.member.email, password='******')
        resp = self.client.get(url, follow=True)
        self.assertEqual(resp.status_code, 200)

        self.client.login(username=self.owner.email, password='******')
        resp = self.client.get(url, follow=True)
        self.assertEqual(resp.status_code, 200)

        self.client.login(username=self.user4.email, password='******')
        resp = self.client.get(url, follow=True)
        self.assertEqual(resp.status_code, 403)
Esempio n. 2
0
 def setUp(self):
     self.owner = UserFactory()
     self.member = UserFactory()
     self.guest = UserFactory()
     self.user4 = UserFactory()
     self.lab = LabFactory(investigator=[self.owner.pk], members=[self.member.pk], guests=[self.guest.pk])
     self.experiment = ExperimentFactory(lab=self.lab, owners=[self.owner.pk])
     self.units = UnitFactory.create_batch(10, lab=self.lab, user=self.owner, experiments=[self.experiment])