Library schema semi-fixed
This commit is contained in:
@@ -1,53 +0,0 @@
|
||||
from django.test import TestCase, Client
|
||||
|
||||
from interface import models
|
||||
|
||||
class SubmissionTestCase(TestCase):
|
||||
|
||||
@staticmethod
|
||||
def setUpTestData():
|
||||
e1 = models.Ensemble.objects.create(name='The Be Sharps', code="1234", passphrase='Homer')
|
||||
e1.projects.create(name='Baby on Board')
|
||||
e2 = models.Ensemble.objects.create(name='Lisa and the Bleeding Gums', code="2345", passphrase="Maggie")
|
||||
e2.projects.create(name='Baker St')
|
||||
|
||||
def setUp(self):
|
||||
self.client = Client()
|
||||
|
||||
def test_submission_upload(self):
|
||||
response = self.client.post('/register', {'code': '12-34', 'passphrase': 'Homer'})
|
||||
self.assertRedirects(response, '/')
|
||||
|
||||
response = self.client.post(f"/projects/1/submission", {'name': 'Ned', 'instrument': 'Harp', 'method': 'upload'})
|
||||
self.assertRedirects(response, '/projects/1/submission/1/upload')
|
||||
|
||||
response = self.client.get(response.url)
|
||||
upload = response.context['upload']
|
||||
self.assertEqual(upload['url'], f"http://localhost:9000/{models.BUCKET}")
|
||||
self.assertRegex(upload['fields']['key'], r'^baby-on-board\/submissions\/[0-9T\-]+_ned_harp_\$\{filename\}$')
|
||||
self.assertEqual(upload['fields']['success_action_redirect'], 'http://testserver/projects/1/submission/1/complete')
|
||||
|
||||
self.assertEqual(models.Submission.objects.count(), 1)
|
||||
self.assertRedirects(self.client.get(f"/projects/1/submission/1/cancel"), '/projects/1')
|
||||
self.assertEqual(models.Submission.objects.count(), 0)
|
||||
|
||||
def test_submission_link(self):
|
||||
response = self.client.post('/register', {'code': '12-34', 'passphrase': 'Homer'})
|
||||
self.assertRedirects(response, '/')
|
||||
|
||||
response = self.client.post(f"/projects/1/submission", {'name': 'Ned', 'instrument': 'Harp', 'method': 'link'})
|
||||
self.assertRedirects(response, '/projects/1/submission/1/link')
|
||||
|
||||
url = 'https://drive.google.com/a/path/to/a/video.mp4#g6e6e4a23'
|
||||
|
||||
response = self.client.post(f"/projects/1/submission/1/link", {'url': url})
|
||||
self.assertRedirects(response, '/projects/1/submission/1')
|
||||
|
||||
response = self.client.get('/projects/1/submission/1')
|
||||
self.assertContains(response, "Thankyou for your submission")
|
||||
|
||||
response = self.client.get('/projects/1')
|
||||
self.assertContains(response, 'Ned')
|
||||
|
||||
s = models.Submission.objects.get(pk=1)
|
||||
self.assertEqual(s.download_url, url)
|
||||
Reference in New Issue
Block a user