aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/tests
diff options
context:
space:
mode:
authorChristopher Allan Webber <cwebber@dustycloud.org>2011-08-30 20:16:47 -0500
committerChristopher Allan Webber <cwebber@dustycloud.org>2011-08-30 20:16:47 -0500
commit2886b340d33c8f5c9cef933089fc1fce525da6aa (patch)
treec0f86bbdb41b33bd97e92f19b751dad898daaa62 /mediagoblin/tests
parent04a7b06d613dd3ab90cde4eb268087e28d92017c (diff)
parent502073f2bf65380be18b349a678ac075777889a4 (diff)
downloadmediagoblin-2886b340d33c8f5c9cef933089fc1fce525da6aa.tar.lz
mediagoblin-2886b340d33c8f5c9cef933089fc1fce525da6aa.tar.xz
mediagoblin-2886b340d33c8f5c9cef933089fc1fce525da6aa.zip
Merge remote branch 'remotes/jwandborg/f403_ability_to_delete'
Diffstat (limited to 'mediagoblin/tests')
-rw-r--r--mediagoblin/tests/test_submission.py61
1 files changed, 60 insertions, 1 deletions
diff --git a/mediagoblin/tests/test_submission.py b/mediagoblin/tests/test_submission.py
index 9ae129cd..43a81f02 100644
--- a/mediagoblin/tests/test_submission.py
+++ b/mediagoblin/tests/test_submission.py
@@ -17,7 +17,7 @@
import urlparse
import pkg_resources
-from nose.tools import assert_equal
+from nose.tools import assert_equal, assert_true, assert_false
from mediagoblin.auth import lib as auth_lib
from mediagoblin.tests.tools import setup_fresh_app, get_test_app
@@ -53,6 +53,8 @@ class TestSubmission:
test_user['pw_hash'] = auth_lib.bcrypt_gen_password_hash('toast')
test_user.save()
+ self.test_user = test_user
+
self.test_app.post(
'/auth/login/', {
'username': u'chris',
@@ -150,6 +152,63 @@ class TestSubmission:
u'Tags must be shorter than 50 characters. Tags that are too long'\
': ffffffffffffffffffffffffffuuuuuuuuuuuuuuuuuuuuuuuuuu']
+ def test_delete(self):
+ util.clear_test_template_context()
+ response = self.test_app.post(
+ '/submit/', {
+ 'title': 'Balanced Goblin',
+ }, upload_files=[(
+ 'file', GOOD_JPG)])
+
+ # Post image
+ response.follow()
+
+ request = util.TEMPLATE_TEST_CONTEXT[
+ 'mediagoblin/user_pages/user.html']['request']
+
+ media = request.db.MediaEntry.find({'title': 'Balanced Goblin'})[0]
+
+ # Does media entry exist?
+ assert_true(media)
+
+ # Do not confirm deletion
+ # ---------------------------------------------------
+ response = self.test_app.post(
+ request.urlgen('mediagoblin.user_pages.media_confirm_delete',
+ # No work: user=media.uploader().username,
+ user=self.test_user['username'],
+ media=media['_id']),
+ {'confirm': 'False'})
+
+ response.follow()
+
+ request = util.TEMPLATE_TEST_CONTEXT[
+ 'mediagoblin/user_pages/user.html']['request']
+
+ media = request.db.MediaEntry.find({'title': 'Balanced Goblin'})[0]
+
+ # Does media entry still exist?
+ assert_true(media)
+
+ # Confirm deletion
+ # ---------------------------------------------------
+ response = self.test_app.post(
+ request.urlgen('mediagoblin.user_pages.media_confirm_delete',
+ # No work: user=media.uploader().username,
+ user=self.test_user['username'],
+ media=media['_id']),
+ {'confirm': 'True'})
+
+ response.follow()
+
+ request = util.TEMPLATE_TEST_CONTEXT[
+ 'mediagoblin/user_pages/user.html']['request']
+
+ # Does media entry still exist?
+ assert_false(
+ request.db.MediaEntry.find(
+ {'_id': media['_id']}).count())
+
def test_malicious_uploads(self):
# Test non-suppoerted file with non-supported extension
# -----------------------------------------------------