def test_get_user_logins_in(self, get_mock): get_mock.return_value = mock_get_response = MagicMock() mock_get_response.data = {'name': 'Test Name', 'email': '*****@*****.**'} session['oauth_token'] = 'test' oauth = OAuthSignIn.get_provider('google') oauth.get_user() self.assertTrue(current_user.is_authenticated)
def test_get_user_data(self, get_mock): get_mock.return_value = mock_get_response = MagicMock() mock_get_response.data = {'name': 'Test Name', 'email': '*****@*****.**'} session['oauth_token'] = 'test' oauth = OAuthSignIn.get_provider('google') data = oauth.get_user_data() self.assertEqual(data['name'], 'Test Name') self.assertEqual(data['email'], '*****@*****.**')
def test_is_not_facebook_in_db(self, get_mock): get_mock.return_value = mock_get_response = MagicMock() mock_get_response.data = {'name': 'Test Name', 'email': '*****@*****.**'} session['oauth_token'] = 'test' oauth = OAuthSignIn.get_provider('google') oauth.get_user() user = User.query.filter_by(email='*****@*****.**').first() self.assertFalse(user.facebook)
def test_get_user_creates_new_and_logs_in(self, get_mock): user = User.query.filter_by(email='*****@*****.**').first() self.assertIsNone(user) get_mock.return_value = mock_get_response = MagicMock() mock_get_response.data = {'name': 'Test Name', 'email': '*****@*****.**'} session['oauth_token'] = 'test' oauth = OAuthSignIn.get_provider('google') oauth.get_user() user = User.query.filter_by(email='*****@*****.**').first() self.assertTrue(user) self.assertTrue(current_user.is_authenticated)
def test_get_session_data(self): oauth = OAuthSignIn.get_provider('google') session_data = oauth.get_session_data({'access_token': 'test'}) self.assertEqual(('test', ''), session_data)
def test_google_authorize(self): oauth = OAuthSignIn.get_provider('google') response = oauth.authorize() self.assertEqual(302, response.status_code)
def test_get_token(self): session['oauth_token'] = 'test token' self.assertEqual('test token', OAuthSignIn.get_token())
def test_authorized_response(self, authorized_response_mock): authorized_response_mock.return_value = {'test': 'dict'} oauth = OAuthSignIn.get_provider('google') response = oauth.authorized_response() self.assertEqual({'test': 'dict'}, response)
def test_google_get_callback_url(self): oauth = OAuthSignIn.get_provider('google') self.assertEqual( url_for('oauth.authorized', provider='google', _external=True), oauth.get_callback_url() )
def test_twitter_subclass(self): oauth = OAuthSignIn.get_provider('twitter') self.assertEqual('TwitterSignIn', oauth.__class__.__name__)
def test_google_subclass(self): oauth = OAuthSignIn.get_provider('google') self.assertEqual('GoogleSignIn', oauth.__class__.__name__)