diff options
Diffstat (limited to 'mediagoblin/tests')
-rw-r--r-- | mediagoblin/tests/test_auth.py | 106 | ||||
-rw-r--r-- | mediagoblin/tests/test_messages.py | 4 | ||||
-rw-r--r-- | mediagoblin/tests/test_submission.py | 42 | ||||
-rw-r--r-- | mediagoblin/tests/test_tags.py | 11 | ||||
-rw-r--r-- | mediagoblin/tests/test_util.py | 57 | ||||
-rw-r--r-- | mediagoblin/tests/tools.py | 6 |
6 files changed, 112 insertions, 114 deletions
diff --git a/mediagoblin/tests/test_auth.py b/mediagoblin/tests/test_auth.py index fbbe1613..40961eca 100644 --- a/mediagoblin/tests/test_auth.py +++ b/mediagoblin/tests/test_auth.py @@ -22,7 +22,7 @@ from nose.tools import assert_equal from mediagoblin.auth import lib as auth_lib from mediagoblin.tests.tools import setup_fresh_app from mediagoblin import mg_globals -from mediagoblin import util +from mediagoblin.tools import template, mail ######################## @@ -76,16 +76,16 @@ def test_register_views(test_app): test_app.get('/auth/register/') # Make sure it rendered with the appropriate template - assert util.TEMPLATE_TEST_CONTEXT.has_key( + assert template.TEMPLATE_TEST_CONTEXT.has_key( 'mediagoblin/auth/register.html') # Try to register without providing anything, should error # -------------------------------------------------------- - util.clear_test_template_context() + template.clear_test_template_context() test_app.post( '/auth/register/', {}) - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/register.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/register.html'] form = context['register_form'] assert form.username.errors == [u'This field is required.'] assert form.password.errors == [u'This field is required.'] @@ -96,14 +96,14 @@ def test_register_views(test_app): # -------------------------------------------------------- ## too short - util.clear_test_template_context() + template.clear_test_template_context() test_app.post( '/auth/register/', { 'username': 'l', 'password': 'o', 'confirm_password': 'o', 'email': 'l'}) - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/register.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/register.html'] form = context['register_form'] assert form.username.errors == [ @@ -112,12 +112,12 @@ def test_register_views(test_app): u'Field must be between 6 and 30 characters long.'] ## bad form - util.clear_test_template_context() + template.clear_test_template_context() test_app.post( '/auth/register/', { 'username': '@_@', 'email': 'lollerskates'}) - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/register.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/register.html'] form = context['register_form'] assert form.username.errors == [ @@ -126,12 +126,12 @@ def test_register_views(test_app): u'Invalid email address.'] ## mismatching passwords - util.clear_test_template_context() + template.clear_test_template_context() test_app.post( '/auth/register/', { 'password': 'herpderp', 'confirm_password': 'derpherp'}) - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/register.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/register.html'] form = context['register_form'] assert form.password.errors == [ @@ -142,7 +142,7 @@ def test_register_views(test_app): # Successful register # ------------------- - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.post( '/auth/register/', { 'username': 'happygirl', @@ -155,7 +155,7 @@ def test_register_views(test_app): assert_equal( urlparse.urlsplit(response.location)[2], '/u/happygirl/') - assert util.TEMPLATE_TEST_CONTEXT.has_key( + assert template.TEMPLATE_TEST_CONTEXT.has_key( 'mediagoblin/user_pages/user.html') ## Make sure user is in place @@ -166,15 +166,15 @@ def test_register_views(test_app): assert new_user['email_verified'] == False ## Make sure user is logged in - request = util.TEMPLATE_TEST_CONTEXT[ + request = template.TEMPLATE_TEST_CONTEXT[ 'mediagoblin/user_pages/user.html']['request'] assert request.session['user_id'] == unicode(new_user['_id']) ## Make sure we get email confirmation, and try verifying - assert len(util.EMAIL_TEST_INBOX) == 1 - message = util.EMAIL_TEST_INBOX.pop() + assert len(mail.EMAIL_TEST_INBOX) == 1 + message = mail.EMAIL_TEST_INBOX.pop() assert message['To'] == 'happygrrl@example.org' - email_context = util.TEMPLATE_TEST_CONTEXT[ + email_context = template.TEMPLATE_TEST_CONTEXT[ 'mediagoblin/auth/verification_email.txt'] assert email_context['verification_url'] in message.get_payload(decode=True) @@ -190,12 +190,12 @@ def test_register_views(test_app): new_user['verification_key']] ## Try verifying with bs verification key, shouldn't work - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.get( "/auth/verify_email/?userid=%s&token=total_bs" % unicode( new_user['_id'])) response.follow() - context = util.TEMPLATE_TEST_CONTEXT[ + context = template.TEMPLATE_TEST_CONTEXT[ 'mediagoblin/user_pages/user.html'] # assert context['verification_successful'] == True # TODO: Would be good to test messages here when we can do so... @@ -206,10 +206,10 @@ def test_register_views(test_app): assert new_user['email_verified'] == False ## Verify the email activation works - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.get("%s?%s" % (path, get_params)) response.follow() - context = util.TEMPLATE_TEST_CONTEXT[ + context = template.TEMPLATE_TEST_CONTEXT[ 'mediagoblin/user_pages/user.html'] # assert context['verification_successful'] == True # TODO: Would be good to test messages here when we can do so... @@ -222,7 +222,7 @@ def test_register_views(test_app): # Uniqueness checks # ----------------- ## We shouldn't be able to register with that user twice - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.post( '/auth/register/', { 'username': 'happygirl', @@ -230,7 +230,7 @@ def test_register_views(test_app): 'confirm_password': 'iamsohappy2', 'email': 'happygrrl2@example.org'}) - context = util.TEMPLATE_TEST_CONTEXT[ + context = template.TEMPLATE_TEST_CONTEXT[ 'mediagoblin/auth/register.html'] form = context['register_form'] assert form.username.errors == [ @@ -240,7 +240,7 @@ def test_register_views(test_app): ### Oops, forgot the password # ------------------- - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.post( '/auth/forgot_password/', {'username': 'happygirl'}) @@ -250,14 +250,14 @@ def test_register_views(test_app): assert_equal( urlparse.urlsplit(response.location)[2], '/auth/forgot_password/email_sent/') - assert util.TEMPLATE_TEST_CONTEXT.has_key( + assert template.TEMPLATE_TEST_CONTEXT.has_key( 'mediagoblin/auth/fp_email_sent.html') ## Make sure link to change password is sent by email - assert len(util.EMAIL_TEST_INBOX) == 1 - message = util.EMAIL_TEST_INBOX.pop() + assert len(mail.EMAIL_TEST_INBOX) == 1 + message = mail.EMAIL_TEST_INBOX.pop() assert message['To'] == 'happygrrl@example.org' - email_context = util.TEMPLATE_TEST_CONTEXT[ + email_context = template.TEMPLATE_TEST_CONTEXT[ 'mediagoblin/auth/fp_verification_email.txt'] #TODO - change the name of verification_url to something forgot-password-ish assert email_context['verification_url'] in message.get_payload(decode=True) @@ -277,14 +277,14 @@ def test_register_views(test_app): assert (new_user['fp_token_expire'] - datetime.datetime.now()).days == 9 ## Try using a bs password-changing verification key, shouldn't work - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.get( "/auth/forgot_password/verify/?userid=%s&token=total_bs" % unicode( new_user['_id']), status=400) assert response.status == '400 Bad Request' ## Try using an expired token to change password, shouldn't work - util.clear_test_template_context() + template.clear_test_template_context() real_token_expiration = new_user['fp_token_expire'] new_user['fp_token_expire'] = datetime.datetime.now() new_user.save() @@ -294,12 +294,12 @@ def test_register_views(test_app): new_user.save() ## Verify step 1 of password-change works -- can see form to change password - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.get("%s?%s" % (path, get_params)) - assert util.TEMPLATE_TEST_CONTEXT.has_key('mediagoblin/auth/change_fp.html') + assert template.TEMPLATE_TEST_CONTEXT.has_key('mediagoblin/auth/change_fp.html') ## Verify step 2.1 of password-change works -- report success to user - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.post( '/auth/forgot_password/verify/', { 'userid': parsed_get_params['userid'], @@ -307,11 +307,11 @@ def test_register_views(test_app): 'confirm_password': 'iamveryveryhappy', 'token': parsed_get_params['token']}) response.follow() - assert util.TEMPLATE_TEST_CONTEXT.has_key( + assert template.TEMPLATE_TEST_CONTEXT.has_key( 'mediagoblin/auth/fp_changed_success.html') ## Verify step 2.2 of password-change works -- login w/ new password success - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.post( '/auth/login/', { 'username': u'happygirl', @@ -322,7 +322,7 @@ def test_register_views(test_app): assert_equal( urlparse.urlsplit(response.location)[2], '/') - assert util.TEMPLATE_TEST_CONTEXT.has_key( + assert template.TEMPLATE_TEST_CONTEXT.has_key( 'mediagoblin/root.html') @@ -341,61 +341,61 @@ def test_authentication_views(test_app): # Get login # --------- test_app.get('/auth/login/') - assert util.TEMPLATE_TEST_CONTEXT.has_key( + assert template.TEMPLATE_TEST_CONTEXT.has_key( 'mediagoblin/auth/login.html') # Failed login - blank form # ------------------------- - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.post('/auth/login/') - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/login.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/login.html'] form = context['login_form'] assert form.username.errors == [u'This field is required.'] assert form.password.errors == [u'This field is required.'] # Failed login - blank user # ------------------------- - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.post( '/auth/login/', { 'password': u'toast'}) - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/login.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/login.html'] form = context['login_form'] assert form.username.errors == [u'This field is required.'] # Failed login - blank password # ----------------------------- - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.post( '/auth/login/', { 'username': u'chris'}) - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/login.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/login.html'] form = context['login_form'] assert form.password.errors == [u'This field is required.'] # Failed login - bad user # ----------------------- - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.post( '/auth/login/', { 'username': u'steve', 'password': 'toast'}) - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/login.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/login.html'] assert context['login_failed'] # Failed login - bad password # --------------------------- - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.post( '/auth/login/', { 'username': u'chris', 'password': 'jam'}) - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/login.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/auth/login.html'] assert context['login_failed'] # Successful login # ---------------- - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.post( '/auth/login/', { 'username': u'chris', @@ -406,17 +406,17 @@ def test_authentication_views(test_app): assert_equal( urlparse.urlsplit(response.location)[2], '/') - assert util.TEMPLATE_TEST_CONTEXT.has_key( + assert template.TEMPLATE_TEST_CONTEXT.has_key( 'mediagoblin/root.html') # Make sure user is in the session - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/root.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/root.html'] session = context['request'].session assert session['user_id'] == unicode(test_user['_id']) # Successful logout # ----------------- - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.get('/auth/logout/') # Should be redirected to index page @@ -424,17 +424,17 @@ def test_authentication_views(test_app): assert_equal( urlparse.urlsplit(response.location)[2], '/') - assert util.TEMPLATE_TEST_CONTEXT.has_key( + assert template.TEMPLATE_TEST_CONTEXT.has_key( 'mediagoblin/root.html') # Make sure the user is not in the session - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/root.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/root.html'] session = context['request'].session assert session.has_key('user_id') == False # User is redirected to custom URL if POST['next'] is set # ------------------------------------------------------- - util.clear_test_template_context() + template.clear_test_template_context() response = test_app.post( '/auth/login/', { 'username': u'chris', diff --git a/mediagoblin/tests/test_messages.py b/mediagoblin/tests/test_messages.py index 9c57a151..2635f4d7 100644 --- a/mediagoblin/tests/test_messages.py +++ b/mediagoblin/tests/test_messages.py @@ -16,7 +16,7 @@ from mediagoblin.messages import fetch_messages, add_message from mediagoblin.tests.tools import setup_fresh_app -from mediagoblin import util +from mediagoblin.tools import template @setup_fresh_app @@ -28,7 +28,7 @@ def test_messages(test_app): """ # Aquire a request object test_app.get('/') - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/root.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/root.html'] request = context['request'] # The message queue should be empty diff --git a/mediagoblin/tests/test_submission.py b/mediagoblin/tests/test_submission.py index 007c0348..1c657e6c 100644 --- a/mediagoblin/tests/test_submission.py +++ b/mediagoblin/tests/test_submission.py @@ -22,7 +22,7 @@ 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 from mediagoblin import mg_globals -from mediagoblin import util +from mediagoblin.tools import template, common GOOD_JPG = pkg_resources.resource_filename( 'mediagoblin.tests', 'test_submission/good.jpg') @@ -63,20 +63,20 @@ class TestSubmission: def test_missing_fields(self): # Test blank form # --------------- - util.clear_test_template_context() + template.clear_test_template_context() response = self.test_app.post( '/submit/', {}) - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/submit/start.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/submit/start.html'] form = context['submit_form'] assert form.file.errors == [u'You must provide a file.'] # Test blank file # --------------- - util.clear_test_template_context() + template.clear_test_template_context() response = self.test_app.post( '/submit/', { 'title': 'test title'}) - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/submit/start.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/submit/start.html'] form = context['submit_form'] assert form.file.errors == [u'You must provide a file.'] @@ -84,7 +84,7 @@ class TestSubmission: def test_normal_uploads(self): # Test JPG # -------- - util.clear_test_template_context() + template.clear_test_template_context() response = self.test_app.post( '/submit/', { 'title': 'Normal upload 1' @@ -96,12 +96,12 @@ class TestSubmission: assert_equal( urlparse.urlsplit(response.location)[2], '/u/chris/') - assert util.TEMPLATE_TEST_CONTEXT.has_key( + assert template.TEMPLATE_TEST_CONTEXT.has_key( 'mediagoblin/user_pages/user.html') # Test PNG # -------- - util.clear_test_template_context() + template.clear_test_template_context() response = self.test_app.post( '/submit/', { 'title': 'Normal upload 2' @@ -112,13 +112,13 @@ class TestSubmission: assert_equal( urlparse.urlsplit(response.location)[2], '/u/chris/') - assert util.TEMPLATE_TEST_CONTEXT.has_key( + assert template.TEMPLATE_TEST_CONTEXT.has_key( 'mediagoblin/user_pages/user.html') def test_tags(self): # Good tag string # -------- - util.clear_test_template_context() + template.clear_test_template_context() response = self.test_app.post( '/submit/', { 'title': 'Balanced Goblin', @@ -128,7 +128,7 @@ class TestSubmission: # New media entry with correct tags should be created response.follow() - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/user_pages/user.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/user_pages/user.html'] request = context['request'] media = request.db.MediaEntry.find({'title': 'Balanced Goblin'})[0] assert_equal(media['tags'], @@ -137,7 +137,7 @@ class TestSubmission: # Test tags that are too long # --------------- - util.clear_test_template_context() + template.clear_test_template_context() response = self.test_app.post( '/submit/', { 'title': 'Balanced Goblin', @@ -146,14 +146,14 @@ class TestSubmission: 'file', GOOD_JPG)]) # Too long error should be raised - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/submit/start.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/submit/start.html'] form = context['submit_form'] assert form.tags.errors == [ u'Tags must be shorter than 50 characters. Tags that are too long'\ ': ffffffffffffffffffffffffffuuuuuuuuuuuuuuuuuuuuuuuuuu'] def test_delete(self): - util.clear_test_template_context() + template.clear_test_template_context() response = self.test_app.post( '/submit/', { 'title': 'Balanced Goblin', @@ -163,7 +163,7 @@ class TestSubmission: # Post image response.follow() - request = util.TEMPLATE_TEST_CONTEXT[ + request = template.TEMPLATE_TEST_CONTEXT[ 'mediagoblin/user_pages/user.html']['request'] media = request.db.MediaEntry.find({'title': 'Balanced Goblin'})[0] @@ -183,7 +183,7 @@ class TestSubmission: response.follow() - request = util.TEMPLATE_TEST_CONTEXT[ + request = template.TEMPLATE_TEST_CONTEXT[ 'mediagoblin/user_pages/user.html']['request'] media = request.db.MediaEntry.find({'title': 'Balanced Goblin'})[0] @@ -202,7 +202,7 @@ class TestSubmission: response.follow() - request = util.TEMPLATE_TEST_CONTEXT[ + request = template.TEMPLATE_TEST_CONTEXT[ 'mediagoblin/user_pages/user.html']['request'] # Does media entry still exist? @@ -213,14 +213,14 @@ class TestSubmission: def test_malicious_uploads(self): # Test non-suppoerted file with non-supported extension # ----------------------------------------------------- - util.clear_test_template_context() + template.clear_test_template_context() response = self.test_app.post( '/submit/', { 'title': 'Malicious Upload 1' }, upload_files=[( 'file', EVIL_FILE)]) - context = util.TEMPLATE_TEST_CONTEXT['mediagoblin/submit/start.html'] + context = template.TEMPLATE_TEST_CONTEXT['mediagoblin/submit/start.html'] form = context['submit_form'] assert form.file.errors == ['The file doesn\'t seem to be an image!'] @@ -230,7 +230,7 @@ class TestSubmission: # Test non-supported file with .jpg extension # ------------------------------------------- - util.clear_test_template_context() + template.clear_test_template_context() response = self.test_app.post( '/submit/', { 'title': 'Malicious Upload 2' @@ -250,7 +250,7 @@ class TestSubmission: # Test non-supported file with .png extension # ------------------------------------------- - util.clear_test_template_context() + template.clear_test_template_context() response = self.test_app.post( '/submit/', { 'title': 'Malicious Upload 3' diff --git a/mediagoblin/tests/test_tags.py b/mediagoblin/tests/test_tags.py index d4628795..a05831c9 100644 --- a/mediagoblin/tests/test_tags.py +++ b/mediagoblin/tests/test_tags.py @@ -15,9 +15,8 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. from mediagoblin.tests.tools import setup_fresh_app -from mediagoblin import util from mediagoblin import mg_globals - +from mediagoblin.tools import text @setup_fresh_app def test_list_of_dicts_conversion(test_app): @@ -28,23 +27,23 @@ def test_list_of_dicts_conversion(test_app): function performs the reverse operation when populating a form to edit tags. """ # Leading, trailing, and internal whitespace should be removed and slugified - assert util.convert_to_tag_list_of_dicts('sleep , 6 AM, chainsaw! ') == [ + assert text.convert_to_tag_list_of_dicts('sleep , 6 AM, chainsaw! ') == [ {'name': u'sleep', 'slug': u'sleep'}, {'name': u'6 AM', 'slug': u'6-am'}, {'name': u'chainsaw!', 'slug': u'chainsaw'}] # If the user enters two identical tags, record only one of them - assert util.convert_to_tag_list_of_dicts('echo,echo') == [{'name': u'echo', + assert text.convert_to_tag_list_of_dicts('echo,echo') == [{'name': u'echo', 'slug': u'echo'}] # Make sure converting the list of dicts to a string works - assert util.media_tags_as_string([{'name': u'yin', 'slug': u'yin'}, + assert text.media_tags_as_string([{'name': u'yin', 'slug': u'yin'}, {'name': u'yang', 'slug': u'yang'}]) == \ u'yin,yang' # If the tag delimiter is a space then we expect different results mg_globals.app_config['tags_delimiter'] = u' ' - assert util.convert_to_tag_list_of_dicts('unicorn ceramic nazi') == [ + assert text.convert_to_tag_list_of_dicts('unicorn ceramic nazi') == [ {'name': u'unicorn', 'slug': u'unicorn'}, {'name': u'ceramic', 'slug': u'ceramic'}, {'name': u'nazi', 'slug': u'nazi'}] diff --git a/mediagoblin/tests/test_util.py b/mediagoblin/tests/test_util.py index c2a3a67f..48fa8669 100644 --- a/mediagoblin/tests/test_util.py +++ b/mediagoblin/tests/test_util.py @@ -16,10 +16,9 @@ import email -from mediagoblin import util +from mediagoblin.tools import common, url, translate, mail, text, testing - -util._activate_testing() +testing._activate_testing() def _import_component_testing_method(silly_string): @@ -28,7 +27,7 @@ def _import_component_testing_method(silly_string): def test_import_component(): - imported_func = util.import_component( + imported_func = common.import_component( 'mediagoblin.tests.test_util:_import_component_testing_method') result = imported_func('hooobaladoobala') expected = u"'hooobaladoobala' is the silliest string I've ever seen" @@ -36,10 +35,10 @@ def test_import_component(): def test_send_email(): - util._clear_test_inboxes() + mail._clear_test_inboxes() # send the email - util.send_email( + mail.send_email( "sender@mediagoblin.example.org", ["amanda@example.org", "akila@example.org"], "Testing is so much fun!", @@ -48,8 +47,8 @@ def test_send_email(): I hope you like unit tests JUST AS MUCH AS I DO!""") # check the main inbox - assert len(util.EMAIL_TEST_INBOX) == 1 - message = util.EMAIL_TEST_INBOX.pop() + assert len(mail.EMAIL_TEST_INBOX) == 1 + message = mail.EMAIL_TEST_INBOX.pop() assert message['From'] == "sender@mediagoblin.example.org" assert message['To'] == "amanda@example.org, akila@example.org" assert message['Subject'] == "Testing is so much fun!" @@ -58,8 +57,8 @@ I hope you like unit tests JUST AS MUCH AS I DO!""") I hope you like unit tests JUST AS MUCH AS I DO!""" # Check everything that the FakeMhost.sendmail() method got is correct - assert len(util.EMAIL_TEST_MBOX_INBOX) == 1 - mbox_dict = util.EMAIL_TEST_MBOX_INBOX.pop() + assert len(mail.EMAIL_TEST_MBOX_INBOX) == 1 + mbox_dict = mail.EMAIL_TEST_MBOX_INBOX.pop() assert mbox_dict['from'] == "sender@mediagoblin.example.org" assert mbox_dict['to'] == ["amanda@example.org", "akila@example.org"] mbox_message = email.message_from_string(mbox_dict['message']) @@ -71,43 +70,43 @@ I hope you like unit tests JUST AS MUCH AS I DO!""" I hope you like unit tests JUST AS MUCH AS I DO!""" def test_slugify(): - assert util.slugify('a walk in the park') == 'a-walk-in-the-park' - assert util.slugify('A Walk in the Park') == 'a-walk-in-the-park' - assert util.slugify('a walk in the park') == 'a-walk-in-the-park' - assert util.slugify('a walk in-the-park') == 'a-walk-in-the-park' - assert util.slugify('a w@lk in the park?') == 'a-w-lk-in-the-park' - assert util.slugify(u'a walk in the par\u0107') == 'a-walk-in-the-parc' - assert util.slugify(u'\u00E0\u0042\u00E7\u010F\u00EB\u0066') == 'abcdef' + assert url.slugify('a walk in the park') == 'a-walk-in-the-park' + assert url.slugify('A Walk in the Park') == 'a-walk-in-the-park' + assert url.slugify('a walk in the park') == 'a-walk-in-the-park' + assert url.slugify('a walk in-the-park') == 'a-walk-in-the-park' + assert url.slugify('a w@lk in the park?') == 'a-w-lk-in-the-park' + assert url.slugify(u'a walk in the par\u0107') == 'a-walk-in-the-parc' + assert url.slugify(u'\u00E0\u0042\u00E7\u010F\u00EB\u0066') == 'abcdef' def test_locale_to_lower_upper(): """ Test cc.i18n.util.locale_to_lower_upper() """ - assert util.locale_to_lower_upper('en') == 'en' - assert util.locale_to_lower_upper('en_US') == 'en_US' - assert util.locale_to_lower_upper('en-us') == 'en_US' + assert translate.locale_to_lower_upper('en') == 'en' + assert translate.locale_to_lower_upper('en_US') == 'en_US' + assert translate.locale_to_lower_upper('en-us') == 'en_US' # crazy renditions. Useful? - assert util.locale_to_lower_upper('en-US') == 'en_US' - assert util.locale_to_lower_upper('en_us') == 'en_US' + assert translate.locale_to_lower_upper('en-US') == 'en_US' + assert translate.locale_to_lower_upper('en_us') == 'en_US' def test_locale_to_lower_lower(): """ Test cc.i18n.util.locale_to_lower_lower() """ - assert util.locale_to_lower_lower('en') == 'en' - assert util.locale_to_lower_lower('en_US') == 'en-us' - assert util.locale_to_lower_lower('en-us') == 'en-us' + assert translate.locale_to_lower_lower('en') == 'en' + assert translate.locale_to_lower_lower('en_US') == 'en-us' + assert translate.locale_to_lower_lower('en-us') == 'en-us' # crazy renditions. Useful? - assert util.locale_to_lower_lower('en-US') == 'en-us' - assert util.locale_to_lower_lower('en_us') == 'en-us' + assert translate.locale_to_lower_lower('en-US') == 'en-us' + assert translate.locale_to_lower_lower('en_us') == 'en-us' def test_html_cleaner(): # Remove images - result = util.clean_html( + result = text.clean_html( '<p>Hi everybody! ' '<img src="http://example.org/huge-purple-barney.png" /></p>\n' '<p>:)</p>') @@ -118,7 +117,7 @@ def test_html_cleaner(): '</div>') # Remove evil javascript - result = util.clean_html( + result = text.clean_html( '<p><a href="javascript:nasty_surprise">innocent link!</a></p>') assert result == ( '<p><a href="">innocent link!</a></p>') diff --git a/mediagoblin/tests/tools.py b/mediagoblin/tests/tools.py index 308e83ee..cf84da14 100644 --- a/mediagoblin/tests/tools.py +++ b/mediagoblin/tests/tools.py @@ -21,7 +21,7 @@ import os, shutil from paste.deploy import loadapp from webtest import TestApp -from mediagoblin import util +from mediagoblin.tools import testing from mediagoblin.init.config import read_mediagoblin_config from mediagoblin.decorators import _make_safe from mediagoblin.db.open import setup_connection_and_db_from_config @@ -59,7 +59,7 @@ def get_test_app(dump_old_app=True): suicide_if_bad_celery_environ() # Make sure we've turned on testing - util._activate_testing() + testing._activate_testing() # Leave this imported as it sets up celery. from mediagoblin.init.celery import from_tests @@ -117,7 +117,7 @@ def setup_fresh_app(func): """ def wrapper(*args, **kwargs): test_app = get_test_app() - util.clear_test_buckets() + testing.clear_test_buckets() return func(test_app, *args, **kwargs) return _make_safe(wrapper, func) |