]> git.ozlabs.org Git - patchwork/commitdiff
tests/bundle: Add tests for public bundle views
authorJeremy Kerr <jk@ozlabs.org>
Sun, 30 Dec 2012 04:15:25 +0000 (12:15 +0800)
committerJeremy Kerr <jk@ozlabs.org>
Sun, 30 Dec 2012 04:36:10 +0000 (12:36 +0800)
Ensure that public bundles are accessible, and that private ones are
not.

Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
apps/patchwork/tests/bundles.py

index e500b3e5412b3180ed119b84c423c45a642125dc..d516ea8d578509ae9e10d24c2bfe924de132b6a3 100644 (file)
@@ -121,6 +121,33 @@ class BundleViewTest(BundleTestBase):
             self.failUnless(next_pos < pos)
             pos = next_pos
 
+class BundlePublicViewTest(BundleTestBase):
+
+    def setUp(self):
+        super(BundlePublicViewTest, self).setUp()
+        self.client.logout()
+        self.bundle.append_patch(self.patches[0])
+        self.url = '/bundle/%s/%s/' % (self.user.username, self.bundle.name)
+
+    def testPublicBundle(self):
+        self.bundle.public = True
+        self.bundle.save()
+        response = self.client.get(self.url)
+        self.assertEqual(response.status_code, 200)
+        self.assertContains(response, self.patches[0].name)
+
+    def testPrivateBundle(self):
+        self.bundle.public = False
+        self.bundle.save()
+        response = self.client.get(self.url)
+        self.assertEqual(response.status_code, 404)
+
+class BundlePublicViewMboxTest(BundlePublicViewTest):
+    def setUp(self):
+        super(BundlePublicViewMboxTest, self).setUp()
+        self.url = '/bundle/%s/%s/mbox/' % (self.user.username,
+                                            self.bundle.name)
+
 class BundleCreateFromListTest(BundleTestBase):
     def testCreateEmptyBundle(self):
         newbundlename = 'testbundle-new'