23
23
from ibm_platform_services .catalog_management_v1 import *
24
24
import pytest
25
25
from dotenv import load_dotenv
26
+ import time
26
27
27
28
configFile = 'catalog_mgmt.env'
28
29
configLoaded = None
29
- config = {}
30
30
31
+ timestamp = int (time .time ())
31
32
expectedAccount = '67d27f28d43948b2b3bda9138f251a13'
32
- expectedLabel = 'integration-test'
33
+ expectedLabel = 'integration-test-{}' . format ( timestamp )
33
34
expectedShortDesc = 'test'
34
35
expectedURL = 'https://cm.globalcatalog.test.cloud.ibm.com/api/v1-beta/catalogs/{}'
35
36
expectedOfferingsURL = 'https://cm.globalcatalog.test.cloud.ibm.com/api/v1-beta/catalogs/{}/offerings'
36
37
fakeName = 'bogus'
37
38
fakeVersionLocator = 'bogus.bogus'
38
39
expectedOfferingName = "test-offering"
39
- expectedLabel = "test"
40
40
expectedOfferingURL = "https://cm.globalcatalog.test.cloud.ibm.com/api/v1-beta/catalogs/{}/offerings/{}"
41
41
42
42
if os .path .exists (configFile ):
@@ -54,21 +54,29 @@ def setUpClass(self):
54
54
55
55
self .service = CatalogManagementV1 .new_instance ()
56
56
57
+ self .config = read_external_sources (CatalogManagementV1 .DEFAULT_SERVICE_NAME )
58
+ assert self .config is not None
59
+
60
+ self .gitToken = self .config .get ('GIT_TOKEN' )
61
+ assert self .gitToken is not None
62
+
57
63
def setUp (self ):
58
64
result = self .service .list_catalogs ().get_result ()
59
65
60
66
if result is not None :
61
67
resources = result .get ('resources' )
62
68
for resource in resources :
63
- self .service .delete_catalog (catalog_identifier = resource .get ('id' ))
69
+ if resource .get ('label' ) == expectedLabel :
70
+ self .service .delete_catalog (catalog_identifier = resource .get ('id' ))
64
71
65
72
def tearDown (self ):
66
73
result = self .service .list_catalogs ().get_result ()
67
74
68
75
if result is not None :
69
76
resources = result .get ('resources' )
70
77
for resource in resources :
71
- self .service .delete_catalog (catalog_identifier = resource .get ('id' ))
78
+ if resource .get ('label' ) == expectedLabel :
79
+ self .service .delete_catalog (catalog_identifier = resource .get ('id' ))
72
80
73
81
def test_get_catalog_account (self ):
74
82
response = self .service .get_catalog_account ()
@@ -90,44 +98,50 @@ def test_get_catalog_account_filters(self):
90
98
assert response .get_status_code () == 200
91
99
92
100
result = response .get_result ()
93
- assert len (result .get ('account_filters' )) == 1
94
101
assert result .get ('account_filters' )[0 ].get ('include_all' ) is True
95
102
assert result .get ('account_filters' )[0 ].get ('category_filters' ) is None
96
103
assert result .get ('account_filters' )[0 ].get ('id_filters' ) .get ('include' ) is None
97
104
assert result .get ('account_filters' )[0 ].get ('id_filters' ) .get ('exclude' ) is None
98
- assert result .get ('catalog_filters' ) is None
99
105
100
106
def test_list_catalogs (self ):
107
+ catalogCount = 0
108
+ catalogIndex = - 1
109
+
101
110
createResponse = self .service .create_catalog (label = expectedLabel , short_description = expectedShortDesc )
102
111
createResult = createResponse .get_result ()
103
112
104
113
listResponse = self .service .list_catalogs ()
105
114
106
115
self .service .delete_catalog (catalog_identifier = createResult .get ('id' ))
107
116
117
+ if listResponse .get_result () is not None :
118
+ for i , resource in enumerate (listResponse .get_result ().get ('resources' )):
119
+ if resource .get ('label' ) == expectedLabel :
120
+ catalogCount = catalogCount + 1
121
+ catalogIndex = i
122
+
108
123
assert listResponse is not None
109
124
assert listResponse .get_status_code () == 200
110
125
111
126
listResult = listResponse .get_result ()
112
127
assert listResult .get ('offset' ) == 0
113
128
assert listResult .get ('limit' ) == 0
114
- assert listResult . get ( 'total_count' ) == 1
129
+ assert catalogCount == 1
115
130
assert listResult .get ('last' ) is None
116
131
assert listResult .get ('prev' ) is None
117
132
assert listResult .get ('next' ) is None
118
133
119
134
resources = listResult .get ('resources' )
120
135
assert resources is not None
121
- assert len (resources ) == 1
122
- assert resources [0 ].get ('label' ) == expectedLabel
123
- assert resources [0 ].get ('short_description' ) == expectedShortDesc
124
- assert resources [0 ].get ('url' ) == expectedURL .format (createResult .get ('id' ))
125
- assert resources [0 ].get ('offerings_url' ) == expectedOfferingsURL .format (createResult .get ('id' ))
126
- assert resources [0 ].get ('owning_account' ) == expectedAccount
127
- assert resources [0 ].get ('catalog_filters' ).get ('include_all' ) is False
128
- assert resources [0 ].get ('catalog_filters' ).get ('category_filters' ) is None
129
- assert resources [0 ].get ('catalog_filters' ).get ('id_filters' ).get ('include' ) is None
130
- assert resources [0 ].get ('catalog_filters' ).get ('id_filters' ).get ('exclude' ) is None
136
+ assert resources [catalogIndex ].get ('label' ) == expectedLabel
137
+ assert resources [catalogIndex ].get ('short_description' ) == expectedShortDesc
138
+ assert resources [catalogIndex ].get ('url' ) == expectedURL .format (createResult .get ('id' ))
139
+ assert resources [catalogIndex ].get ('offerings_url' ) == expectedOfferingsURL .format (createResult .get ('id' ))
140
+ assert resources [catalogIndex ].get ('owning_account' ) == expectedAccount
141
+ assert resources [catalogIndex ].get ('catalog_filters' ).get ('include_all' ) is False
142
+ assert resources [catalogIndex ].get ('catalog_filters' ).get ('category_filters' ) is None
143
+ assert resources [catalogIndex ].get ('catalog_filters' ).get ('id_filters' ).get ('include' ) is None
144
+ assert resources [catalogIndex ].get ('catalog_filters' ).get ('id_filters' ).get ('exclude' ) is None
131
145
132
146
def test_create_catalog (self ):
133
147
response = self .service .create_catalog (label = expectedLabel , short_description = expectedShortDesc )
@@ -390,7 +404,7 @@ def test_import_offering(self):
390
404
catalogResponse = self .service .create_catalog (label = expectedLabel , short_description = expectedShortDesc )
391
405
catalogResult = catalogResponse .get_result ()
392
406
393
- offeringResponse = self .service .import_offering (catalog_identifier = catalogResult .get ('id' ), zipurl = expectedOfferingZipURL )
407
+ offeringResponse = self .service .import_offering (catalog_identifier = catalogResult .get ('id' ), zipurl = expectedOfferingZipURL , x_auth_token = self . gitToken )
394
408
offeringResult = offeringResponse .get_result ()
395
409
396
410
self .service .delete_catalog (catalog_identifier = catalogResult .get ('id' ))
@@ -422,10 +436,10 @@ def test_import_offering_version(self):
422
436
catalogResponse = self .service .create_catalog (label = expectedLabel , short_description = expectedShortDesc )
423
437
catalogResult = catalogResponse .get_result ()
424
438
425
- offeringResponse = self .service .import_offering (catalog_identifier = catalogResult .get ('id' ), zipurl = expectedOfferingZipURL )
439
+ offeringResponse = self .service .import_offering (catalog_identifier = catalogResult .get ('id' ), zipurl = expectedOfferingZipURL , x_auth_token = self . gitToken )
426
440
offeringResult = offeringResponse .get_result ()
427
441
428
- versionResponse = self .service .import_offering_version (catalog_identifier = catalogResult .get ('id' ), offering_id = offeringResult .get ('id' ), zipurl = expectedOfferingZipURLUpdate )
442
+ versionResponse = self .service .import_offering_version (catalog_identifier = catalogResult .get ('id' ), offering_id = offeringResult .get ('id' ), zipurl = expectedOfferingZipURLUpdate , x_auth_token = self . gitToken )
429
443
versionResult = versionResponse .get_result ()
430
444
431
445
self .service .delete_catalog (catalog_identifier = catalogResult .get ('id' ))
@@ -453,13 +467,13 @@ def test_import_offering_version_failure(self):
453
467
createResult = createResponse .get_result ()
454
468
455
469
with pytest .raises (ApiException ) as e :
456
- self .service .import_offering_version (catalog_identifier = createResult .get ('id' ), offering_id = fakeName , zipurl = expectedOfferingZipURL )
470
+ self .service .import_offering_version (catalog_identifier = createResult .get ('id' ), offering_id = fakeName , zipurl = expectedOfferingZipURL , x_auth_token = self . gitToken )
457
471
assert e .value .code == 404
458
472
459
473
self .service .delete_catalog (catalog_identifier = createResult .get ('id' ))
460
474
461
475
with pytest .raises (ApiException ) as e :
462
- self .service .import_offering_version (catalog_identifier = createResult .get ('id' ), offering_id = fakeName , zipurl = expectedOfferingZipURL )
476
+ self .service .import_offering_version (catalog_identifier = createResult .get ('id' ), offering_id = fakeName , zipurl = expectedOfferingZipURL , x_auth_token = self . gitToken )
463
477
assert e .value .code == 403
464
478
465
479
def test_reload_offering (self ):
@@ -473,10 +487,10 @@ def test_reload_offering(self):
473
487
catalogResponse = self .service .create_catalog (label = expectedLabel , short_description = expectedShortDesc )
474
488
catalogResult = catalogResponse .get_result ()
475
489
476
- offeringResponse = self .service .import_offering (catalog_identifier = catalogResult .get ('id' ), zipurl = expectedOfferingZipURL )
490
+ offeringResponse = self .service .import_offering (catalog_identifier = catalogResult .get ('id' ), zipurl = expectedOfferingZipURL , x_auth_token = self . gitToken )
477
491
offeringResult = offeringResponse .get_result ()
478
492
479
- reloadResponse = self .service .reload_offering (catalog_identifier = catalogResult .get ('id' ), offering_id = offeringResult .get ('id' ), zipurl = expectedOfferingZipURL , target_version = expectedOfferingVersion )
493
+ reloadResponse = self .service .reload_offering (catalog_identifier = catalogResult .get ('id' ), offering_id = offeringResult .get ('id' ), zipurl = expectedOfferingZipURL , target_version = expectedOfferingVersion , x_auth_token = self . gitToken )
480
494
reloadResult = reloadResponse .get_result ()
481
495
482
496
self .service .delete_catalog (catalog_identifier = catalogResult .get ('id' ))
@@ -523,7 +537,7 @@ def test_get_version(self):
523
537
catalogResponse = self .service .create_catalog (label = expectedLabel , short_description = expectedShortDesc )
524
538
catalogResult = catalogResponse .get_result ()
525
539
526
- offeringResponse = self .service .import_offering (catalog_identifier = catalogResult .get ('id' ), zipurl = expectedOfferingZipURL )
540
+ offeringResponse = self .service .import_offering (catalog_identifier = catalogResult .get ('id' ), zipurl = expectedOfferingZipURL , x_auth_token = self . gitToken )
527
541
offeringResult = offeringResponse .get_result ()
528
542
529
543
reloadResponse = self .service .get_version (version_loc_id = offeringResult .get ('kinds' )[0 ].get ('versions' )[0 ].get ('version_locator' ))
@@ -556,7 +570,7 @@ def test_delete_version(self):
556
570
catalogResponse = self .service .create_catalog (label = expectedLabel , short_description = expectedShortDesc )
557
571
catalogResult = catalogResponse .get_result ()
558
572
559
- offeringResponse = self .service .import_offering (catalog_identifier = catalogResult .get ('id' ), zipurl = expectedOfferingZipURL )
573
+ offeringResponse = self .service .import_offering (catalog_identifier = catalogResult .get ('id' ), zipurl = expectedOfferingZipURL , x_auth_token = self . gitToken )
560
574
offeringResult = offeringResponse .get_result ()
561
575
562
576
reloadResponse = self .service .delete_version (version_loc_id = offeringResult .get ('kinds' )[0 ].get ('versions' )[0 ].get ('version_locator' ))
@@ -577,7 +591,7 @@ def test_get_version_about(self):
577
591
catalogResponse = self .service .create_catalog (label = expectedLabel , short_description = expectedShortDesc )
578
592
catalogResult = catalogResponse .get_result ()
579
593
580
- offeringResponse = self .service .import_offering (catalog_identifier = catalogResult .get ('id' ), zipurl = expectedOfferingZipURL )
594
+ offeringResponse = self .service .import_offering (catalog_identifier = catalogResult .get ('id' ), zipurl = expectedOfferingZipURL , x_auth_token = self . gitToken )
581
595
offeringResult = offeringResponse .get_result ()
582
596
583
597
getResponse = self .service .get_version_about (version_loc_id = offeringResult .get ('kinds' )[0 ].get ('versions' )[0 ].get ('version_locator' ))
@@ -602,10 +616,10 @@ def test_get_version_updates(self):
602
616
catalogResponse = self .service .create_catalog (label = expectedLabel , short_description = expectedShortDesc )
603
617
catalogResult = catalogResponse .get_result ()
604
618
605
- offeringResponse = self .service .import_offering (catalog_identifier = catalogResult .get ('id' ), zipurl = expectedOfferingZipURL )
619
+ offeringResponse = self .service .import_offering (catalog_identifier = catalogResult .get ('id' ), zipurl = expectedOfferingZipURL , x_auth_token = self . gitToken )
606
620
offeringResult = offeringResponse .get_result ()
607
621
608
- versionResponse = self .service .import_offering_version (catalog_identifier = catalogResult .get ('id' ), offering_id = offeringResult .get ('id' ), zipurl = expectedOfferingZipURLUpdate )
622
+ versionResponse = self .service .import_offering_version (catalog_identifier = catalogResult .get ('id' ), offering_id = offeringResult .get ('id' ), zipurl = expectedOfferingZipURLUpdate , x_auth_token = self . gitToken )
609
623
versionResult = versionResponse .get_result ()
610
624
611
625
updateResponse = self .service .get_version_updates (version_loc_id = offeringResult .get ('kinds' )[0 ].get ('versions' )[0 ].get ('version_locator' ))
0 commit comments