12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- from django.core.files.uploadedfile import SimpleUploadedFile
- from django.test.client import RequestFactory
- from django.urls import reverse
- from fixtures.apidocs_test_case import APIDocsTestCase
- from sentry.testutils.silo import region_silo_test
- @region_silo_test
- class ProjectReleaseFilesListDocsTest(APIDocsTestCase):
- def setUp(self):
- project = self.create_project(name="foo")
- file1 = self.create_file(
- name="blah.js",
- size=42,
- type="release.file",
- headers={"Content-Type": "application/json"},
- checksum="dc1e3f3e411979d336c3057cce64294f3420f93a",
- )
- release = self.create_release(project=project, version="1")
- self.create_release_file(
- file=file1, release_id=release.id, name="http://example.com/blah.js"
- )
- self.url = reverse(
- "sentry-api-0-project-release-files",
- kwargs={
- "project_slug": project.slug,
- "organization_slug": project.organization.slug,
- "version": release.version,
- },
- )
- self.login_as(user=self.user)
- def test_get(self):
- response = self.client.get(self.url)
- request = RequestFactory().get(self.url)
- self.validate_schema(request, response)
- def test_post(self):
- data = {
- "name": "http://example.com/application.js",
- "header": "X-SourceMap: http://example.com",
- "file": SimpleUploadedFile(
- "application.js", b"function() { }", content_type="application/javascript"
- ),
- }
- response = self.client.post(
- self.url,
- data,
- format="multipart",
- )
- request = RequestFactory().post(self.url, data=data, content_type="multipart/form-data")
- self.validate_schema(request, response)
|