test-service-hooks.py 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  1. # -*- coding: utf-8 -*-
  2. from __future__ import absolute_import
  3. from django.core.urlresolvers import reverse
  4. from django.test.client import RequestFactory
  5. from tests.apidocs.util import APIDocsTestCase
  6. class ProjectServiceHooksDocs(APIDocsTestCase):
  7. def setUp(self):
  8. self.create_service_hook(project=self.project, events=("event.created",))
  9. self.create_service_hook(project=self.project, events=("event.alert",))
  10. self.url = reverse(
  11. "sentry-api-0-service-hooks",
  12. kwargs={"organization_slug": self.organization.slug, "project_slug": self.project.slug},
  13. )
  14. self.login_as(user=self.user)
  15. def test_get(self):
  16. with self.feature("projects:servicehooks"):
  17. response = self.client.get(self.url)
  18. request = RequestFactory().get(self.url)
  19. self.validate_schema(request, response)
  20. def test_post(self):
  21. data = {"url": "https://example.com/other-sentry-hook", "events": ["event.created"]}
  22. with self.feature("projects:servicehooks"):
  23. response = self.client.post(self.url, data)
  24. request = RequestFactory().post(self.url, data)
  25. self.validate_schema(request, response)