8
8
from ibm_cloud_sdk_core import BaseService
9
9
from ibm_cloud_sdk_core import ApiException
10
10
from ibm_cloud_sdk_core import CP4DTokenManager
11
- from ibm_cloud_sdk_core .authenticators import IAMAuthenticator , Authenticator , BasicAuthenticator , CP4DAuthenticator
11
+ from ibm_cloud_sdk_core .authenticators import IamAuthenticator , Authenticator , BasicAuthenticator , CloudPakForDataAuthenticator
12
12
13
13
14
14
class AnyServiceV1 (BaseService ):
@@ -36,21 +36,24 @@ def op_with_path_params(self, path0, path1):
36
36
params = {'version' : self .version }
37
37
url = '/v1/foo/{0}/bar/{1}/baz' .format (
38
38
* self ._encode_path_vars (path0 , path1 ))
39
- response = self .request (
40
- method = 'GET' , url = url , params = params , accept_json = True )
39
+ request = self .prepare_request ( method = 'GET' , url = url , params = params )
40
+ response = self . send ( request )
41
41
return response
42
42
43
43
def with_http_config (self , http_config ):
44
44
self .set_http_config (http_config )
45
- response = self .request (method = 'GET' , url = '' , accept_json = True )
45
+ request = self .prepare_request (method = 'GET' , url = '' , accept_json = True )
46
+ response = self .send (request )
46
47
return response
47
48
48
49
def any_service_call (self ):
49
- response = self .request (method = 'GET' , url = '' , accept_json = True )
50
+ request = self .prepare_request (method = 'GET' , url = '' , accept_json = True )
51
+ response = self .send (request )
50
52
return response
51
53
52
54
def head_request (self ):
53
- response = self .request (method = 'HEAD' , url = '' , accept_json = True )
55
+ request = self .prepare_request (method = 'HEAD' , url = '' , accept_json = True )
56
+ response = self .send (request )
54
57
return response
55
58
56
59
@@ -133,14 +136,10 @@ def test_fail_http_config():
133
136
134
137
@responses .activate
135
138
def test_iam ():
136
- url = "https://iam.cloud.ibm.com/identity/token"
137
- iam_authenticator = IAMAuthenticator ('my_apikey' )
139
+ iam_authenticator = IamAuthenticator ('my_apikey' , 'https://iam-test.cloud.ibm.com/identity/token' )
138
140
service = AnyServiceV1 ('2017-07-07' , authenticator = iam_authenticator )
139
141
assert service .authenticator is not None
140
142
141
- iam_authenticator .set_url ('https://iam-test.cloud.ibm.com/identity/token' )
142
- assert service .authenticator .token_manager .url == 'https://iam-test.cloud.ibm.com/identity/token'
143
-
144
143
response = {
145
144
"access_token" : get_access_token (),
146
145
"token_type" : "Bearer" ,
@@ -178,20 +177,9 @@ def __init__(self):
178
177
assert isinstance (service .authenticator , Authenticator )
179
178
180
179
181
- def test_set_username_and_password ():
182
- basic_authenticator = BasicAuthenticator ('my_username' , 'my_password' )
183
- service = AnyServiceV1 ('2017-07-07' , authenticator = basic_authenticator )
184
- assert service .authenticator .username == 'my_username'
185
- assert service .authenticator .password == 'my_password'
186
-
187
- basic_authenticator .set_username_and_password ('hello' , 'ibm' )
188
- assert service .authenticator .username == 'hello'
189
- assert service .authenticator .password == 'ibm'
190
-
191
-
192
180
def test_for_cp4d ():
193
- cp4d_authenticator = CP4DAuthenticator ('my_username' , 'my_password' ,
194
- 'my_url' )
181
+ cp4d_authenticator = CloudPakForDataAuthenticator ('my_username' , 'my_password' ,
182
+ 'my_url' )
195
183
service = AnyServiceV1 ('2017-07-07' , authenticator = cp4d_authenticator )
196
184
assert service .authenticator .token_manager is not None
197
185
assert service .authenticator .token_manager .username == 'my_username'
@@ -207,8 +195,8 @@ def test_disable_ssl_verification():
207
195
service1 .set_disable_ssl_verification (False )
208
196
assert service1 .disable_ssl_verification is False
209
197
210
- cp4d_authenticator = CP4DAuthenticator ('my_username' , 'my_password' ,
211
- 'my_url' )
198
+ cp4d_authenticator = CloudPakForDataAuthenticator ('my_username' , 'my_password' ,
199
+ 'my_url' )
212
200
service2 = AnyServiceV1 ('2017-07-07' , authenticator = cp4d_authenticator )
213
201
assert service2 .disable_ssl_verification is False
214
202
cp4d_authenticator .set_disable_ssl_verification (True )
@@ -330,7 +318,8 @@ def test_request_server_error():
330
318
content_type = 'application/json' )
331
319
service = AnyServiceV1 ('2018-11-20' )
332
320
try :
333
- service .request ('GET' , url = '' )
321
+ prepped = service .prepare_request ('GET' , url = '' )
322
+ service .send (prepped )
334
323
except ApiException as err :
335
324
assert err .message == 'internal server error'
336
325
@@ -345,13 +334,15 @@ def test_request_success_json():
345
334
}),
346
335
content_type = 'application/json' )
347
336
service = AnyServiceV1 ('2018-11-20' )
348
- detailed_response = service .request ('GET' , url = '' , accept_json = True )
337
+ prepped = service .prepare_request ('GET' , url = '' )
338
+ detailed_response = service .send (prepped )
349
339
assert detailed_response .get_result () == {'foo' : 'bar' }
350
340
351
341
service = AnyServiceV1 ('2018-11-20' , authenticator = BasicAuthenticator ('my_username' , 'my_password' ))
352
342
service .set_default_headers ({'test' : 'header' })
353
343
service .set_disable_ssl_verification (True )
354
- detailed_response = service .request ('GET' , url = '' , accept_json = True )
344
+ prepped = service .prepare_request ('GET' , url = '' )
345
+ detailed_response = service .send (prepped )
355
346
assert detailed_response .get_result () == {'foo' : 'bar' }
356
347
357
348
@responses .activate
@@ -365,8 +356,9 @@ def test_request_success_response():
365
356
}),
366
357
content_type = 'application/json' )
367
358
service = AnyServiceV1 ('2018-11-20' )
368
- detailed_response = service .request ('GET' , url = '' )
369
- assert detailed_response .get_result ().text == '{"foo": "bar"}'
359
+ prepped = service .prepare_request ('GET' , url = '' )
360
+ detailed_response = service .send (prepped )
361
+ assert detailed_response .get_result () == {"foo" : "bar" }
370
362
371
363
@responses .activate
372
364
def test_request_fail_401 ():
@@ -380,7 +372,8 @@ def test_request_fail_401():
380
372
content_type = 'application/json' )
381
373
service = AnyServiceV1 ('2018-11-20' )
382
374
try :
383
- service .request ('GET' , url = '' )
375
+ prepped = service .prepare_request ('GET' , url = '' )
376
+ service .send (prepped )
384
377
except ApiException as err :
385
378
assert err .message == 'Unauthorized: Access is denied due to invalid credentials'
386
379
@@ -448,18 +441,16 @@ def test_user_agent_header():
448
441
responses .GET ,
449
442
'https://gateway.watsonplatform.net/test/api' ,
450
443
status = 200 ,
451
- body = json .dumps ({
452
- 'foo' : 'bar'
453
- }),
454
- content_type = 'application/json' )
455
- response = service .request (
456
- 'GET' , url = '' , headers = {
457
- 'user-agent' : 'my_user_agent'
458
- })
444
+ body = 'some text' )
445
+ prepped = service .prepare_request ('GET' , url = '' , headers = {
446
+ 'user-agent' : 'my_user_agent'
447
+ })
448
+ response = service .send (prepped )
459
449
assert response .get_result ().request .headers .__getitem__ (
460
450
'user-agent' ) == 'my_user_agent'
461
451
462
- response = service .request ('GET' , url = '' , headers = None )
452
+ prepped = service .prepare_request ('GET' , url = '' , headers = None )
453
+ response = service .send (prepped )
463
454
assert response .get_result ().request .headers .__getitem__ (
464
455
'user-agent' ) == user_agent_header ['User-Agent' ]
465
456
@@ -481,4 +472,4 @@ def test_files():
481
472
os .path .dirname (__file__ ), '../resources/ibm-credentials-iam.env' ), 'r' )
482
473
form_data ['file1' ] = (None , file , 'application/octet-stream' )
483
474
form_data ['string1' ] = (None , 'hello' , 'text.plain' )
484
- service .request ('GET' , url = '' , headers = {'X-opt-out' : True }, files = form_data )
475
+ service .prepare_request ('GET' , url = '' , headers = {'X-opt-out' : True }, files = form_data )
0 commit comments