From: Jeremy Kerr Date: Fri, 13 Feb 2009 01:02:48 +0000 (+1100) Subject: [views] Don't create bundles with no name X-Git-Url: https://git.ozlabs.org/?a=commitdiff_plain;ds=sidebyside;h=eddb3ce9c1659226d05ca1b959d0c31cd216f93a;hp=afb8cc33cdb19c7f68fe5fd1216ad22731842a2b;p=patchwork [views] Don't create bundles with no name Check to see that we have a valid name before creating. Signed-off-by: Jeremy Kerr --- diff --git a/apps/patchwork/tests/bundles.py b/apps/patchwork/tests/bundles.py index 1346cd8..d9c0bed 100644 --- a/apps/patchwork/tests/bundles.py +++ b/apps/patchwork/tests/bundles.py @@ -155,6 +155,28 @@ class BundleCreateFromListTest(BundleTestBase): self.failUnlessEqual(bundle.patches.count(), 1) self.failUnlessEqual(bundle.patches.all()[0], patch) + def testCreateNonEmptyBundleEmptyName(self): + newbundlename = 'testbundle-new' + patch = self.patches[0] + + n_bundles = Bundle.objects.count() + + params = {'form': 'patchlistform', + 'bundle_name': '', + 'action': 'Create', + 'project': defaults.project.id, + 'patch_id:%d' % patch.id: 'checked'} + + response = self.client.post( + '/project/%s/list/' % defaults.project.linkname, + params) + + self.assertContains(response, 'No bundle name was specified', + status_code = 200) + + # test that no new bundles are present + self.failUnlessEqual(n_bundles, Bundle.objects.count()) + class BundleCreateFromPatchTest(BundleTestBase): def testCreateNonEmptyBundle(self): newbundlename = 'testbundle-new' diff --git a/apps/patchwork/utils.py b/apps/patchwork/utils.py index 5bd6925..3737e89 100644 --- a/apps/patchwork/utils.py +++ b/apps/patchwork/utils.py @@ -97,8 +97,12 @@ def set_bundle(user, project, action, data, patches, context): # set up the bundle bundle = None if action == 'create': + bundle_name = data['bundle_name'].strip() + if not bundle_name: + return ['No bundle name was specified'] + bundle = Bundle(owner = user, project = project, - name = data['bundle_name']) + name = bundle_name) bundle.save() context.add_message("Bundle %s created" % bundle.name)