|
1 | | -import unittest |
| 1 | +import pytest |
2 | 2 |
|
3 | | -from msgraphcore.constants import AUTH_MIDDLEWARE_OPTIONS |
4 | 3 | from msgraphcore.middleware.authorization import AuthorizationHandler |
5 | | -from msgraphcore.middleware.options.auth_middleware_options import AuthMiddlewareOptions |
6 | | -from msgraphcore.middleware.options.middleware_control import middleware_control |
| 4 | +from msgraphcore.middleware.request_context import RequestContext |
7 | 5 |
|
8 | 6 |
|
9 | | -class TestAuthorizationHandler(unittest.TestCase): |
10 | | - def test_auth_options_override_default_scopes(self): |
11 | | - auth_option = ['email.read'] |
12 | | - default_scopes = ['.default'] |
| 7 | +def test_context_options_override_default_scopes(): |
| 8 | + """ Test scopes found in the request context override default scopes""" |
| 9 | + default_scopes = ['.default'] |
| 10 | + middleware_control = { |
| 11 | + 'scopes': ['email.read'], |
| 12 | + } |
| 13 | + request_context = RequestContext(middleware_control, {}) |
13 | 14 |
|
14 | | - middleware_control.set(AUTH_MIDDLEWARE_OPTIONS, AuthMiddlewareOptions(auth_option)) |
15 | | - auth_handler = AuthorizationHandler(None, scopes=default_scopes) |
| 15 | + auth_handler = AuthorizationHandler(None, scopes=default_scopes) |
16 | 16 |
|
17 | | - auth_handler_scopes = auth_handler.get_scopes() |
18 | | - self.assertEqual(auth_option, auth_handler_scopes) |
| 17 | + auth_handler_scopes = auth_handler.get_scopes(request_context) |
| 18 | + assert auth_handler_scopes == middleware_control['scopes'] |
19 | 19 |
|
20 | | - def test_auth_handler_get_scopes_does_not_overwrite_default_scopes(self): |
21 | | - auth_option = ['email.read'] |
22 | | - default_scopes = ['.default'] |
23 | 20 |
|
24 | | - middleware_control.set(AUTH_MIDDLEWARE_OPTIONS, AuthMiddlewareOptions(auth_option)) |
25 | | - auth_handler = AuthorizationHandler(None, scopes=default_scopes) |
26 | | - auth_handler.get_scopes() |
| 21 | +def test_auth_handler_get_scopes_does_not_overwrite_default_scopes(): |
| 22 | + default_scopes = ['.default'] |
| 23 | + middleware_control = { |
| 24 | + 'scopes': ['email.read'], |
| 25 | + } |
| 26 | + request_context = RequestContext(middleware_control, {}) |
| 27 | + auth_handler = AuthorizationHandler(None, scopes=default_scopes) |
27 | 28 |
|
28 | | - self.assertEqual(auth_handler.scopes, default_scopes) |
| 29 | + auth_handler_scopes = auth_handler.get_scopes(request_context) |
| 30 | + |
| 31 | + assert auth_handler.scopes == default_scopes |
0 commit comments