diff options
author | Joar Wandborg <git@wandborg.com> | 2011-08-30 21:46:47 +0200 |
---|---|---|
committer | Joar Wandborg <git@wandborg.com> | 2011-08-30 21:46:47 +0200 |
commit | afe4e513f7d1ac827bbf9b1d827c8e2a604e16a3 (patch) | |
tree | f14cb36b493b4a222a441cbd87c2ec8a752f5747 | |
parent | 39b45e203507b6cdb25491b719bfa152cb0241f7 (diff) | |
download | mediagoblin-afe4e513f7d1ac827bbf9b1d827c8e2a604e16a3.tar.lz mediagoblin-afe4e513f7d1ac827bbf9b1d827c8e2a604e16a3.tar.xz mediagoblin-afe4e513f7d1ac827bbf9b1d827c8e2a604e16a3.zip |
Added tests for delete/confirm_delete
-rw-r--r-- | mediagoblin/tests/test_submission.py | 61 |
1 files changed, 60 insertions, 1 deletions
diff --git a/mediagoblin/tests/test_submission.py b/mediagoblin/tests/test_submission.py index 9ae129cd..b2599d22 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.confirm.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.confirm.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 # ----------------------------------------------------- |