test_api_permissions.py 1.1 KB

123456789101112131415161718192021222324252627282930
  1. from django.urls import reverse
  2. from django.utils import timezone
  3. from model_bakery import baker
  4. from glitchtip.test_utils.test_case import APIPermissionTestCase
  5. class StatsAPIPermissionTests(APIPermissionTestCase):
  6. def setUp(self):
  7. self.create_user_org()
  8. self.set_client_credentials(self.auth_token.token)
  9. self.event = baker.make(
  10. "issue_events.IssueEvent", issue__project__organization=self.organization
  11. )
  12. self.url = reverse("api:stats_v2", args=[self.organization.slug])
  13. def test_get(self):
  14. start = timezone.now() - timezone.timedelta(hours=1)
  15. end = timezone.now()
  16. query = {
  17. "category": "error",
  18. "start": start,
  19. "end": end,
  20. "field": "sum(quantity)",
  21. }
  22. res = self.client.get(self.url, query, **self.get_headers())
  23. self.assertEqual(res.status_code, 403)
  24. self.auth_token.add_permission("org:read")
  25. res = self.client.get(self.url, query, **self.get_headers())
  26. self.assertEqual(res.status_code, 200)