Ejemplo n.º 1
0
    def test_user_can_manage(self):
        policy = PolicyFactory()
        user = UserFactory()
        policy.managers.add(user)
        policy.save()

        is_granted = user.has_perm('subscription.manage_policy', policy)
        self.assertEqual(is_granted, True)
Ejemplo n.º 2
0
 def test_valid_manager(self):
     policy = PolicyFactory()
     user = User.objects.create_user(username='******', password='******')
     self.client.login(username=user.username, password='******')
     policy.managers.add(user)
     policy.save()
     response = self.client.get(self.url)
     self.assertEqual(response.status_code, 200)
     self.assertContains(response, str(policy))
Ejemplo n.º 3
0
    def test_acccount_add_granted(self):
        policy = PolicyFactory()
        policy.managers.add(self.user_granted)
        policy.save()

        self.client.login(username=self.user_granted.username,
                          password="******")
        url = reverse('userspace:subscription:account_add')
        response = self.client.get(url)
        self.assertEqual(response.status_code, 200)
Ejemplo n.º 4
0
 def test_filtered_listing(self):
     policy = PolicyFactory()
     user = User.objects.create_user(username='******', password='******')
     policy.managers.add(user)
     policy.save()
     IndividualAccountFactory.create_batch(2, policy=policy)
     IndividualAccountFactory.create_batch(3)
     self.client.login(username=user.username, password='******')
     response = self.client.get(self.url)
     self.assertEqual(response.status_code, 200)
     self.assertEqual(len(response.context['object_list']), 2)
Ejemplo n.º 5
0
    def test_acccount_delete_restricted(self):
        policy = PolicyFactory()
        policy.save()
        account = IndividualAccountFactory(policy=policy)

        self.client.login(username=self.user_non_granted.username,
                          password="******")
        url = reverse('userspace:subscription:account_delete',
                      args=(account.pk, ))
        response = self.client.get(url)
        self.assertEqual(response.status_code, 404)
Ejemplo n.º 6
0
    def test_permissions_ko(self):
        policy = PolicyFactory()
        user = User.objects.create_user(username='******', password='******')
        self.client.login(username=user.username, password='******')
        policy.managers.add(user)
        policy.save()

        account = IndividualAccountFactory()
        url = reverse('userspace:subscription:account_delete',
                      args=(account.pk, ))
        response = self.client.get(url)
        self.assertEqual(response.status_code, 404)
Ejemplo n.º 7
0
    def test_menu_subscription_presence(self):
        policy = PolicyFactory()
        user = UserFactory(username="******")
        user.set_password("user")
        user.save()
        policy.managers.add(user)
        policy.save()

        url = reverse('userspace:subscription:account_list')
        self.client.login(username="******", password="******")
        response = self.client.get(reverse('userspace:dashboard'))
        self.assertContains(response, url)
Ejemplo n.º 8
0
    def test_acccount_reset_password_granted(self):
        policy = PolicyFactory()
        policy.managers.add(self.user_granted)
        policy.save()
        account = IndividualAccountFactory(policy=policy)

        self.client.login(username=self.user_granted.username,
                          password="******")
        url = reverse('userspace:subscription:account_reset_pwd',
                      args=(account.pk, ))
        response = self.client.get(url)
        self.assertEqual(response.status_code, 200)
Ejemplo n.º 9
0
    def test_empty_pwd(self):
        policy = PolicyFactory()
        user = User.objects.create_user(username='******', password='******')
        self.client.login(username=user.username, password='******')
        policy.managers.add(user)
        policy.save()

        account = IndividualAccountFactory(policy=policy)
        old_pwd = account.password
        url = reverse('userspace:subscription:account_reset_pwd',
                      args=(account.pk, ))
        response = self.client.post(url, {'password': ''})
        self.assertEqual(response.status_code, 302)
        same_account = IndividualAccount.objects.get(id=account.pk)
        self.assertEqual(IndividualAccount.objects.count(), 1)
        self.assertNotEqual(same_account.password, old_pwd)
        self.assertEqual(same_account.email, account.email)