0001-replace-slashes-by-hyphen-in-filename.patch
fargo/fargo/models.py | ||
---|---|---|
25 | 25 |
def save(self, *args, **kwargs): |
26 | 26 |
if not self.slug: |
27 | 27 |
self.slug = slugify(self.label) |
28 | ||
28 | 29 |
return super(Origin, self).save(*args, **kwargs) |
29 | 30 | |
30 | 31 |
def __unicode__(self): |
... | ... | |
60 | 61 |
verbose_name_plural = _('user documents') |
61 | 62 |
ordering = ('-created', 'user') |
62 | 63 | |
64 |
def save(self, *args, **kwargs): |
|
65 |
self.filename = self.filename.replace('/', '-') |
|
66 |
return super(UserDocument, self).save(*args, **kwargs) |
|
67 | ||
63 | 68 |
def get_download_url(self): |
64 | 69 |
return reverse('download', kwargs={'pk': self.id, 'filename': self.filename}) |
65 | 70 |
tests/test_api.py | ||
---|---|---|
132 | 132 |
assert response.json['errors'].keys() == ['__all__'] |
133 | 133 |
assert response.json['errors']['__all__'][0]['code'] == 'box-is-full' |
134 | 134 |
assert response.json['errors']['__all__'][0]['limit'] == 4 |
135 | ||
136 | ||
137 |
def test_push_document_slashed_name(app, admin_user, john_doe): |
|
138 |
login(app) |
|
139 |
url = reverse('fargo-api-push-document') |
|
140 |
data = { |
|
141 |
'user_email': john_doe.email, |
|
142 |
'origin': 'wcs', |
|
143 |
'file_b64_content': base64.b64encode('coin'), |
|
144 |
'file_name': 'monfichier 17/08/2016.pdf', |
|
145 |
} |
|
146 |
response = app.post_json(url, data, status=200) |
|
147 |
assert response.json['result'] == 1 |
|
148 |
assert models.Document.objects.count() == 1 |
|
149 |
assert models.UserDocument.objects.first().filename == 'monfichier 17-08-2016.pdf' |
|
135 |
- |