@@ -41,6 +41,7 @@ class TestLineBotApi(unittest.TestCase):
4141 self.client_secret = 'client_secret'
4242 self.client_assertion_type = 'urn:ietf:params:oauth:client-assertion-type:jwt-bearer'
4343 self.key_id = 'sDTOzw5wIfxxxxPEzcmeQA'
44+ self.scope = 'profile chat_message.write'
4445
4546 @responses.activate
4647 def test_issue_channel_access_token_v2_1(self):
@@ -131,6 +132,53 @@ class TestLineBotApi(unittest.TestCase):
131132 self.assertEqual(self.client_secret, encoded_body['client_secret'][0])
132133 self.assertEqual(self.access_token, encoded_body['access_token'][0])
133134
135+ @responses.activate
136+ def test_verify_channel_access_token_v2_1(self):
137+ endpoint = LineBotApi.DEFAULT_API_ENDPOINT + '/oauth2/v2.1/verify'
138+
139+ responses.add(
140+ responses.GET,
141+ endpoint,
142+ status=200,
143+ json={
144+ 'client_id': self.client_id,
145+ 'expires_in': self.expires_in,
146+ 'scope': self.scope,
147+ },
148+ )
149+
150+ self.tested.verify_channel_access_token_v2_1(self.access_token)
151+
152+ request = responses.calls[0].request
153+ self.assertEqual('GET', request.method)
154+ self.assertEqual(endpoint, request.url)
155+
156+ encoded_body = parse.parse_qs(request.body)
157+ self.assertEqual(self.client_id, encoded_body['client_id'][0])
158+ self.assertEqual(self.expires_in, encoded_body['expires_in'][0])
159+ self.assertEqual(self.scope, encoded_body['scope'][0])
160+
161+ @responses.activate
162+ def test_get_channel_token_key_ids_v2_1(self):
163+ endpoint = LineBotApi.DEFAULT_API_ENDPOINT + '/oauth2/v2.1/tokens/kid'
164+
165+ responses.add(
166+ responses.GET,
167+ endpoint,
168+ status=200,
169+ json={
170+ 'kids': [self.key_id],
171+ },
172+ )
173+
174+ self.tested.get_channel_token_key_ids_v2_1(self.client_assertion, self.client_assertion_type)
175+
176+ request = responses.calls[0].request
177+ self.assertEqual('GET', request.method)
178+ self.assertEqual(endpoint, request.url)
179+
180+ encoded_body = parse.parse_qs(request.body)
181+ self.assertEqual(self.kids, encoded_body['kids'][0])
134182
135183if __name__ == '__main__':
136184 unittest.main()
0 commit comments