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)