23 |
23 |
|
24 |
24 |
|
25 |
25 |
def test_nosign():
|
26 |
|
with mock.patch('combo.utils.requests_wrapper.RequestsSession.request') as request:
|
|
26 |
with mock.patch('combo.utils.requests_wrapper.RequestsSession.send') as send:
|
27 |
27 |
requests.get('http://example.org/foo/bar/')
|
28 |
|
assert request.call_args[0][1] == 'http://example.org/foo/bar/'
|
|
28 |
assert send.call_args[0][0].url == 'http://example.org/foo/bar/'
|
29 |
29 |
|
30 |
30 |
def test_sign():
|
31 |
31 |
remote_service = {'url': 'http://example.org', 'secret': 'secret', 'orig': 'myself'}
|
32 |
|
with mock.patch('combo.utils.requests_wrapper.RequestsSession.request') as request:
|
|
32 |
with mock.patch('combo.utils.requests_wrapper.RequestsSession.send') as send:
|
33 |
33 |
requests.get('/foo/bar/', remote_service=remote_service)
|
34 |
|
url = request.call_args[0][1]
|
|
34 |
url = send.call_args[0][0].url
|
35 |
35 |
assert url.startswith('http://example.org/foo/bar/?')
|
36 |
36 |
scheme, netloc, path, params, querystring, fragment = urlparse.urlparse(url)
|
37 |
37 |
query = urlparse.parse_qs(querystring, keep_blank_values=True)
|
... | ... | |
41 |
41 |
assert check_query(querystring, 'secret') == True
|
42 |
42 |
|
43 |
43 |
requests.get('/foo/bar/', remote_service=remote_service, without_user=True)
|
44 |
|
url = request.call_args[0][1]
|
|
44 |
url = send.call_args[0][0].url
|
45 |
45 |
assert url.startswith('http://example.org/foo/bar/?')
|
46 |
46 |
scheme, netloc, path, params, querystring, fragment = urlparse.urlparse(url)
|
47 |
47 |
query = urlparse.parse_qs(querystring, keep_blank_values=True)
|
... | ... | |
52 |
52 |
|
53 |
53 |
|
54 |
54 |
def test_auto_sign():
|
55 |
|
with mock.patch('combo.utils.requests_wrapper.RequestsSession.request') as request:
|
|
55 |
with mock.patch('combo.utils.requests_wrapper.RequestsSession.send') as send:
|
56 |
56 |
requests.get('http://example.org/foo/bar/', remote_service='auto')
|
57 |
|
url = request.call_args[0][1]
|
|
57 |
url = send.call_args[0][0].url
|
58 |
58 |
assert url.startswith('http://example.org/foo/bar/?')
|
59 |
59 |
scheme, netloc, path, params, querystring, fragment = urlparse.urlparse(url)
|
60 |
60 |
query = urlparse.parse_qs(querystring, keep_blank_values=True)
|
... | ... | |
62 |
62 |
assert check_query(querystring, 'combo') == True
|
63 |
63 |
|
64 |
64 |
requests.get('http://doesnotexist/foo/bar/', remote_service='auto')
|
65 |
|
assert request.call_args[0][1] == 'http://doesnotexist/foo/bar/'
|
|
65 |
assert send.call_args[0][0].url == 'http://doesnotexist/foo/bar/'
|
66 |
66 |
|
67 |
67 |
|
68 |
68 |
def test_sign_user():
|
69 |
69 |
remote_service = {'url': 'http://example.org', 'secret': 'secret', 'orig': 'myself'}
|
70 |
|
with mock.patch('combo.utils.requests_wrapper.RequestsSession.request') as request:
|
|
70 |
with mock.patch('combo.utils.requests_wrapper.RequestsSession.send') as send:
|
71 |
71 |
|
72 |
72 |
user = MockUser(samlized=True)
|
73 |
73 |
|
74 |
74 |
requests.get('/foo/bar/', remote_service=remote_service, user=user)
|
75 |
|
url = request.call_args[0][1]
|
|
75 |
url = send.call_args[0][0].url
|
76 |
76 |
assert url.startswith('http://example.org/foo/bar/?')
|
77 |
77 |
scheme, netloc, path, params, querystring, fragment = urlparse.urlparse(url)
|
78 |
78 |
query = urlparse.parse_qs(querystring, keep_blank_values=True)
|
... | ... | |
83 |
83 |
|
84 |
84 |
requests.get('/foo/bar/', remote_service=remote_service, user=user,
|
85 |
85 |
federation_key='email')
|
86 |
|
url = request.call_args[0][1]
|
|
86 |
url = send.call_args[0][0].url
|
87 |
87 |
assert url.startswith('http://example.org/foo/bar/?')
|
88 |
88 |
scheme, netloc, path, params, querystring, fragment = urlparse.urlparse(url)
|
89 |
89 |
query = urlparse.parse_qs(querystring, keep_blank_values=True)
|
... | ... | |
96 |
96 |
user = MockUser(samlized=False)
|
97 |
97 |
|
98 |
98 |
requests.get('/foo/bar/', remote_service=remote_service, user=user)
|
99 |
|
url = request.call_args[0][1]
|
|
99 |
url = send.call_args[0][0].url
|
100 |
100 |
assert url.startswith('http://example.org/foo/bar/?')
|
101 |
101 |
scheme, netloc, path, params, querystring, fragment = urlparse.urlparse(url)
|
102 |
102 |
query = urlparse.parse_qs(querystring, keep_blank_values=True)
|
... | ... | |
108 |
108 |
|
109 |
109 |
def test_sign_anonymous_user():
|
110 |
110 |
remote_service = {'url': 'http://example.org', 'secret': 'secret', 'orig': 'myself'}
|
111 |
|
with mock.patch('combo.utils.requests_wrapper.RequestsSession.request') as request:
|
|
111 |
with mock.patch('combo.utils.requests_wrapper.RequestsSession.send') as send:
|
112 |
112 |
|
113 |
113 |
user = AnonymousUser()
|
114 |
114 |
|
115 |
115 |
requests.get('/foo/bar/', remote_service=remote_service, user=user)
|
116 |
|
url = request.call_args[0][1]
|
|
116 |
url = send.call_args[0][0].url
|
117 |
117 |
assert url.startswith('http://example.org/foo/bar/?')
|
118 |
118 |
scheme, netloc, path, params, querystring, fragment = urlparse.urlparse(url)
|
119 |
119 |
query = urlparse.parse_qs(querystring, keep_blank_values=True)
|
120 |
|
-
|