skip openid test if python-openid isn't installed
[mediagoblin.git] / mediagoblin / tests / test_openid.py
index c85f631847622667edbaedadaf8a39e1c361eee1..3dfafb600ee593737874d8eb2880b5f763abccdb 100644 (file)
 #
 # You should have received a copy of the GNU Affero General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
 import urlparse
 import pkg_resources
 import pytest
 import mock
 
-from openid.consumer.consumer import SuccessResponse
+openid_consumer = pytest.importorskip(
+    "openid.consumer.consumer")
 
 from mediagoblin import mg_globals
 from mediagoblin.db.base import Session
@@ -41,7 +43,7 @@ def openid_plugin_app(request):
 class TestOpenIDPlugin(object):
     def _setup(self, openid_plugin_app, value=True, edit=False, delete=False):
         if value:
-            response = SuccessResponse(mock.Mock(), mock.Mock())
+            response = openid_consumer.SuccessResponse(mock.Mock(), mock.Mock())
             if edit or delete:
                 response.identity_url = u'http://add.myopenid.com'
             else:
@@ -186,8 +188,8 @@ class TestOpenIDPlugin(object):
             openid_plugin_app.get('/auth/logout')
 
             # Get user and detach from session
-            test_user = mg_globals.database.User.find_one({
-                'username': u'chris'})
+            test_user = mg_globals.database.User.query.filter_by(
+                username=u'chris').first()
             Session.expunge(test_user)
 
             # Log back in
@@ -314,8 +316,8 @@ class TestOpenIDPlugin(object):
             assert 'mediagoblin/edit/edit_account.html' in template.TEMPLATE_TEST_CONTEXT
 
             # OpenID Added?
-            new_openid = mg_globals.database.OpenIDUserURL.find_one(
-                {'openid_url': u'http://add.myopenid.com'})
+            new_openid = mg_globals.database.OpenIDUserURL.query.filter_by(
+                openid_url=u'http://add.myopenid.com').first()
             assert new_openid
 
         _test_add()
@@ -365,8 +367,8 @@ class TestOpenIDPlugin(object):
             assert 'mediagoblin/edit/edit_account.html' in template.TEMPLATE_TEST_CONTEXT
 
             # OpenID deleted?
-            new_openid = mg_globals.database.OpenIDUserURL.find_one(
-                {'openid_url': u'http://add.myopenid.com'})
+            new_openid = mg_globals.database.OpenIDUserURL.query.filter_by(
+                openid_url=u'http://add.myopenid.com').first()
             assert not new_openid
 
         _test_delete(self, test_user)