Example #1
0
    def test_building_id_site_redirect_uri(self):
        try:
            from urlparse import urlparse
        except ImportError:
            from urllib.parse import urlparse

        app = Application(client=self.client, properties={'href': 'apphref'})

        ret = app.build_id_site_redirect_url('http://localhost/')
        try:
            jwt_response = urlparse(ret).query.split('=')[1]
        except:
            self.fail("Failed to parse ID site redirect uri")

        try:
            decoded_data = jwt.decode(jwt_response,
                                      verify=False,
                                      algorithms=['HS256'])
        except jwt.DecodeError:
            self.fail("Invaid JWT generated.")

        self.assertIsNotNone(decoded_data.get('iat'))
        self.assertIsNotNone(decoded_data.get('jti'))
        self.assertIsNotNone(decoded_data.get('iss'))
        self.assertIsNotNone(decoded_data.get('sub'))
        self.assertIsNotNone(decoded_data.get('cb_uri'))
        self.assertEqual(decoded_data.get('cb_uri'), 'http://localhost/')
        self.assertIsNone(decoded_data.get('path'))
        self.assertIsNone(decoded_data.get('state'))

        ret = app.build_id_site_redirect_url('http://testserver/',
                                             path='/#/register',
                                             state='test')
        try:
            jwt_response = urlparse(ret).query.split('=')[1]
        except:
            self.fail("Failed to parse ID site redirect uri")

        try:
            decoded_data = jwt.decode(jwt_response,
                                      verify=False,
                                      algorithms=['HS256'])
        except jwt.DecodeError:
            self.fail("Invaid JWT generated.")

        self.assertEqual(decoded_data.get('path'), '/#/register')
        self.assertEqual(decoded_data.get('state'), 'test')
    def test_building_id_site_redirect_uri(self):
        try:
            from urlparse import urlparse
        except ImportError:
            from urllib.parse import urlparse

        app = Application(client=self.client, properties={'href': 'apphref'})

        ret = app.build_id_site_redirect_url('http://localhost/')
        try:
            jwt_response = urlparse(ret).query.split('=')[1]
        except:
            self.fail("Failed to parse ID site redirect uri")

        try:
            decoded_data = jwt.decode(
                jwt_response, verify=False, algorithms=['HS256'])
        except jwt.DecodeError:
            self.fail("Invaid JWT generated.")

        self.assertIsNotNone(decoded_data.get('iat'))
        self.assertIsNotNone(decoded_data.get('jti'))
        self.assertIsNotNone(decoded_data.get('iss'))
        self.assertIsNotNone(decoded_data.get('sub'))
        self.assertIsNotNone(decoded_data.get('cb_uri'))
        self.assertEqual(decoded_data.get('cb_uri'), 'http://localhost/')
        self.assertIsNone(decoded_data.get('path'))
        self.assertIsNone(decoded_data.get('state'))

        ret = app.build_id_site_redirect_url(
                'http://testserver/',
                path='/#/register',
                state='test')
        try:
            jwt_response = urlparse(ret).query.split('=')[1]
        except:
            self.fail("Failed to parse ID site redirect uri")

        try:
            decoded_data = jwt.decode(
                jwt_response, verify=False, algorithms=['HS256'])
        except jwt.DecodeError:
            self.fail("Invaid JWT generated.")

        self.assertEqual(decoded_data.get('path'), '/#/register')
        self.assertEqual(decoded_data.get('state'), 'test')
    def test_building_id_site_redirect_uri(self):

        app = Application(client=self.client, properties={'href': 'apphref'})
        ret = app.build_id_site_redirect_url('http://localhost/')
        decoded_data = self.decode_jwt(ret)
        self.assertIsNotNone(decoded_data.get('iat'))
        self.assertIsNotNone(decoded_data.get('jti'))
        self.assertIsNotNone(decoded_data.get('iss'))
        self.assertIsNotNone(decoded_data.get('sub'))
        self.assertIsNotNone(decoded_data.get('cb_uri'))
        self.assertEqual(decoded_data.get('cb_uri'), 'http://localhost/')
        self.assertIsNone(decoded_data.get('path'))
        self.assertIsNone(decoded_data.get('state'))
        self.assertNotEqual(decoded_data.get('sof'), True)
        self.assertIsNone(decoded_data.get('onk'))
        self.assertIsNone(decoded_data.get('sp_token'))

        ret = app.build_id_site_redirect_url(
                'http://testserver/',
                path='/#/register',
                state='test')
        decoded_data = self.decode_jwt(ret)
        self.assertEqual(decoded_data.get('path'), '/#/register')
        self.assertEqual(decoded_data.get('state'), 'test')

        sp_token = '{"test":"test"}'
        ret = app.build_id_site_redirect_url(
            'http://localhost/', show_organization_field=True, sp_token=sp_token)
        decoded_data = self.decode_jwt(ret)
        self.assertEqual(decoded_data["sof"], True)
        self.assertEqual(decoded_data["sp_token"], sp_token)
        self.assertIsNone(decoded_data.get('onk'))

        ret = app.build_id_site_redirect_url(
            'http://localhost/', organization_name_key="testorg")
        decoded_data = self.decode_jwt(ret)
        self.assertEqual(decoded_data["onk"], "testorg")
        self.assertNotEqual(decoded_data.get('sof'), True)
    def test_building_id_site_redirect_uri(self):
        app = Application(client=self.client, properties={'href': 'apphref'})
        ret = app.build_id_site_redirect_url('http://localhost/')
        decoded_data = self.decode_jwt(ret)
        self.assertIsNotNone(decoded_data.get('iat'))
        self.assertIsNotNone(decoded_data.get('jti'))
        self.assertIsNotNone(decoded_data.get('iss'))
        self.assertIsNotNone(decoded_data.get('sub'))
        self.assertIsNotNone(decoded_data.get('cb_uri'))
        self.assertEqual(decoded_data.get('cb_uri'), 'http://localhost/')
        self.assertIsNone(decoded_data.get('path'))
        self.assertIsNone(decoded_data.get('state'))
        self.assertNotEqual(decoded_data.get('sof'), True)
        self.assertIsNone(decoded_data.get('onk'))
        self.assertIsNone(decoded_data.get('sp_token'))

        ret = app.build_id_site_redirect_url('http://testserver/',
                                             path='/#/register',
                                             state='test')
        decoded_data = self.decode_jwt(ret)
        self.assertEqual(decoded_data.get('path'), '/#/register')
        self.assertEqual(decoded_data.get('state'), 'test')

        sp_token = '{"test":"test"}'
        ret = app.build_id_site_redirect_url('http://localhost/',
                                             show_organization_field=True,
                                             sp_token=sp_token)
        decoded_data = self.decode_jwt(ret)
        self.assertEqual(decoded_data["sof"], True)
        self.assertEqual(decoded_data["sp_token"], sp_token)
        self.assertIsNone(decoded_data.get('onk'))

        ret = app.build_id_site_redirect_url('http://localhost/',
                                             organization_name_key="testorg")
        decoded_data = self.decode_jwt(ret)
        self.assertEqual(decoded_data["onk"], "testorg")
        self.assertNotEqual(decoded_data.get('sof'), True)
 def test_building_id_site_redirect_uri_with_usd(self):
     app = Application(client=self.client, properties={'href': 'apphref'})
     ret = app.build_id_site_redirect_url('http://localhost/',
                                          use_subdomain=True)
     decoded_data = self.decode_jwt(ret)
     self.assertEqual(decoded_data.get('usd'), True)
 def test_building_id_site_redirect_uri_with_usd(self):
     app = Application(client=self.client, properties={'href': 'apphref'})
     ret = app.build_id_site_redirect_url('http://localhost/', use_subdomain=True)
     decoded_data = self.decode_jwt(ret)
     self.assertEqual(decoded_data.get('usd'), True)