summaryrefslogtreecommitdiffstats
path: root/apps/patchwork
diff options
context:
space:
mode:
authorJeremy Kerr <jk@ozlabs.org>2009-02-13 12:02:48 +1100
committerJeremy Kerr <jk@ozlabs.org>2009-02-13 12:02:48 +1100
commiteddb3ce9c1659226d05ca1b959d0c31cd216f93a (patch)
tree76a8a555c3439b256187331b671b9ffc9a7b5844 /apps/patchwork
parentafb8cc33cdb19c7f68fe5fd1216ad22731842a2b (diff)
downloadpatchwork-eddb3ce9c1659226d05ca1b959d0c31cd216f93a.tar.bz2
patchwork-eddb3ce9c1659226d05ca1b959d0c31cd216f93a.tar.xz
[views] Don't create bundles with no name
Check to see that we have a valid name before creating. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Diffstat (limited to 'apps/patchwork')
-rw-r--r--apps/patchwork/tests/bundles.py22
-rw-r--r--apps/patchwork/utils.py6
2 files changed, 27 insertions, 1 deletions
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)