def test_request_init(self):
     req_args = {'response_type': 'code', 'state': 'state'}
     self.service.endpoint = 'https://example.com/authorize'
     _info = self.service.get_request_parameters(request_args=req_args)
     assert set(_info.keys()) == {'url', 'method'}
     msg = AuthorizationRequest().from_urlencoded(
         self.service.get_urlinfo(_info['url']))
     assert set(msg.keys()) == {'client_id', 'scope', 'response_type',
                                'state', 'redirect_uri', 'nonce'}
    def test_multiple_response_types_json(self):
        ar = AuthorizationRequest(response_type=["code", "token"], client_id="foobar")
        ue = ar.to_json()
        ue_obj = json.loads(ue)
        expected_ue_obj = {"response_type": "code token", "client_id": "foobar"}
        assert ue_obj == expected_ue_obj

        are = AuthorizationRequest().deserialize(ue, "json")
        assert _eq(are.keys(), ["response_type", "client_id"])
        assert _eq(are["response_type"], ["code", "token"])
    def test_multiple_response_types_urlencoded(self):
        ar = AuthorizationRequest(response_type=["code", "token"], client_id="foobar")

        ue = ar.to_urlencoded()
        ue_splits = ue.split("&")
        expected_ue_splits = "response_type=code+token&client_id=foobar".split("&")
        assert _eq(ue_splits, expected_ue_splits)

        are = AuthorizationRequest().deserialize(ue, "urlencoded")
        assert _eq(are.keys(), ["response_type", "client_id"])
        assert _eq(are["response_type"], ["code", "token"])
Exemple #4
0
    def test_multiple_scopes_urlencoded(self):
        ar = AuthorizationRequest(response_type=["code", "token"],
                                  client_id="foobar",
                                  scope=["openid", "foxtrot"])
        ue = ar.to_urlencoded()
        ue_splits = ue.split('&')
        expected_ue_splits = "scope=openid+foxtrot&response_type=code+token" \
                             "&client_id=foobar".split(
            '&')
        assert _eq(ue_splits, expected_ue_splits)

        are = AuthorizationRequest().deserialize(ue, "urlencoded")
        assert _eq(are.keys(), ["response_type", "client_id", "scope"])
        assert _eq(are["response_type"], ["code", "token"])
        assert _eq(are["scope"], ["openid", "foxtrot"])