test_organization_release_files.py 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. from django.core.files.uploadedfile import SimpleUploadedFile
  2. from django.core.urlresolvers import reverse
  3. from django.test.client import RequestFactory
  4. from tests.apidocs.util import APIDocsTestCase
  5. class ReleaseFilesListDocsTest(APIDocsTestCase):
  6. def setUp(self):
  7. project = self.create_project(name="foo")
  8. release = self.create_release(project=self.project, version="1")
  9. file1 = self.create_file(
  10. name="blah.js",
  11. size=42,
  12. type="release.file",
  13. headers={"Content-Type": "application/json"},
  14. checksum="dc1e3f3e411979d336c3057cce64294f3420f93a",
  15. )
  16. self.create_release_file(file=file1, release=release, name="http://example.com/blah.js")
  17. self.url = reverse(
  18. "sentry-api-0-organization-release-files",
  19. kwargs={"organization_slug": project.organization.slug, "version": release.version},
  20. )
  21. self.login_as(user=self.user)
  22. def test_get(self):
  23. response = self.client.get(self.url)
  24. request = RequestFactory().get(self.url)
  25. self.validate_schema(request, response)
  26. def test_post(self):
  27. data = {
  28. "name": "http://example.com/application.js",
  29. "header": "X-SourceMap: http://example.com",
  30. "file": SimpleUploadedFile(
  31. "application.js", b"function() { }", content_type="application/javascript"
  32. ),
  33. }
  34. response = self.client.post(
  35. self.url,
  36. data,
  37. format="multipart",
  38. )
  39. request = RequestFactory().post(self.url, data=data, content_type="multipart/form-data")
  40. self.validate_schema(request, response)