Skip to content
Snippets Groups Projects
Commit 2dd46938 authored by Valentin Rigal's avatar Valentin Rigal
Browse files

Limit dataset clone name to 100 chars

parent cba6d859
No related branches found
No related tags found
1 merge request!2151Limit dataset clone name to 100 chars
......@@ -793,7 +793,7 @@ class DatasetClone(CorpusACLMixin, CreateAPIView):
clone = copy.copy(dataset)
# Make Django think it is a new dataset that it should insert
clone.id = None
clone.name = clone_name
clone.name = clone_name[:100]
clone.state = DatasetState.Open
clone.creator = request.user
clone.save()
......
......@@ -1518,6 +1518,21 @@ class TestDatasetsAPI(FixtureAPITestCase):
'task_id': None,
},
)
def test_clone_name_too_long(self):
dataset = self.corpus.datasets.create(name='A' * 99, creator=self.user)
self.client.force_login(self.user)
with self.assertNumQueries(13):
response = self.client.post(
reverse('api:dataset-clone', kwargs={'pk': dataset.id}),
format='json',
)
self.assertEqual(response.status_code, status.HTTP_201_CREATED)
data = response.json()
clone = Dataset.objects.get(id=data.pop('id'))
self.assertEqual(clone.name, 'Clone of ' + 'A' * 91)
self.assertEqual(data['name'], clone.name)
# DatasetElementDestroy
def test_destroy_dataset_element_requires_login(self):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment