Skip to content

Commit 29bc40e

Browse files
author
Michael Smith
committed
2 parents 62a18c0 + 8d8926b commit 29bc40e

File tree

2 files changed

+80
-6
lines changed

2 files changed

+80
-6
lines changed

acitoolkit/acitoolkit.py

+5-5
Original file line numberDiff line numberDiff line change
@@ -2265,7 +2265,7 @@ def get_json(self):
22652265
return text
22662266

22672267
@classmethod
2268-
def get(cls, session, parent=None, tenant=None):
2268+
def get(cls, session, parent, tenant):
22692269
"""
22702270
To get all of acitoolkit style Filter Entries APIC class.
22712271
@@ -2307,13 +2307,13 @@ def get(cls, session, parent=None, tenant=None):
23072307
'target-subtree-class=vzEntry&'
23082308
'query-target-filter=eq(vzEntry.name,"%s")' % (tenant_url, filter_name, entry_name))
23092309
ret = session.get(query_url)
2310-
data = ret.json()['imdata']
2311-
if len(data) == 0:
2310+
filter_data = ret.json()['imdata']
2311+
if len(filter_data) == 0:
23122312
continue
2313-
logging.debug('response returned %s', data)
2313+
logging.debug('response returned %s', filter_data)
23142314
resp = []
23152315
obj = cls(entry_name, parent)
2316-
attribute_data = data[0]['vzEntry']['attributes']
2316+
attribute_data = filter_data[0]['vzEntry']['attributes']
23172317
obj._populate_from_attributes(attribute_data)
23182318
resp.append(obj)
23192319
return resp

tests/acitoolkit_test.py

+75-1
Original file line numberDiff line numberDiff line change
@@ -986,6 +986,14 @@ def test_get_name_from_dn(self):
986986
dn = 'uni/tn-tenant/taboo-test'
987987
self.assertEquals(Taboo._get_name_from_dn(dn), 'test')
988988

989+
def test_get_table(self):
990+
tenant = Tenant('tenant')
991+
taboo1 = Taboo('taboo1', tenant)
992+
taboo2 = Taboo('taboo2', tenant)
993+
taboo3 = Taboo('taboo3', tenant)
994+
taboos = [taboo1, taboo2, taboo3]
995+
self.assertIsInstance(Taboo.get_table(taboos)[0], Table)
996+
989997

990998
class TestEPG(unittest.TestCase):
991999
"""
@@ -2045,6 +2053,26 @@ def test_get(self):
20452053
l2ext_domains = L2ExtDomain.get(session)
20462054
for l2ext_domain in l2ext_domains:
20472055
self.assertTrue(isinstance(l2ext_domain, L2ExtDomain))
2056+
return l2ext_domains
2057+
2058+
def test_get_by_name(self):
2059+
session = self.login_to_apic()
2060+
l2ext_domains = self.test_get()
2061+
for l2ext_domain in l2ext_domains:
2062+
self.assertEqual(L2ExtDomain.get_by_name(session, l2ext_domain.name), l2ext_domain)
2063+
2064+
def test_generate_attributes(self):
2065+
l2ext_domains = self.test_get()
2066+
for l2ext_domain in l2ext_domains:
2067+
if l2ext_domain.name:
2068+
self.assertEqual(l2ext_domain._generate_attributes()['name'], l2ext_domain.name)
2069+
if l2ext_domain.dn:
2070+
self.assertEqual(l2ext_domain._generate_attributes()['dn'], l2ext_domain.dn)
2071+
if l2ext_domain.lcOwn:
2072+
self.assertEqual(l2ext_domain._generate_attributes()['lcOwn'], l2ext_domain.lcOwn)
2073+
if l2ext_domain.childAction:
2074+
self.assertEqual(l2ext_domain._generate_attributes()['childAction'], l2ext_domain.childAction)
2075+
20482076

20492077
class TestLiveL3ExtDomain(TestLiveAPIC):
20502078
"""
@@ -2203,6 +2231,17 @@ def test_get_contexts(self):
22032231
(session, tenant, app, epg) = self.base_test_setup()
22042232
Context.get(session, tenant)
22052233

2234+
def test_get_contexts_table(self):
2235+
session = self.login_to_apic()
2236+
tenants = Tenant.get(session)
2237+
total_contexts = []
2238+
for tenant in tenants:
2239+
contexts = Context.get(session, tenant)
2240+
for context in contexts:
2241+
total_contexts.append(context)
2242+
contexts_table = Context.get_table(total_contexts)[0]
2243+
self.assertIsInstance(contexts_table, Table)
2244+
22062245
def test_get_contexts_invalid_tenant_as_string(self):
22072246
(session, tenant, app, epg) = self.base_test_setup()
22082247
self.assertRaises(TypeError, Context.get, session, 'tenant')
@@ -2438,6 +2477,39 @@ def test_get(self):
24382477
vmm_domains = VmmDomain.get(session)
24392478
for vmm_domain in vmm_domains:
24402479
self.assertTrue(isinstance(vmm_domain, VmmDomain))
2480+
return vmm_domains
2481+
2482+
def test_get_json(self):
2483+
vmm_domains = self.test_get()
2484+
for vmm_domain in vmm_domains:
2485+
self.assertTrue(type(vmm_domain.get_json()) is dict)
2486+
2487+
def test_get_by_name(self):
2488+
session = self.login_to_apic()
2489+
vmm_domains = VmmDomain.get(session)
2490+
for vmm_domain in vmm_domains:
2491+
self.assertEqual(VmmDomain.get_by_name(session, vmm_domain.name), vmm_domain)
2492+
2493+
2494+
class TestLiveFilterEntry(TestLiveAPIC):
2495+
def test_get(self):
2496+
session = self.login_to_apic()
2497+
tenants = Tenant.get(session)
2498+
filter_entries = []
2499+
# contracts = []
2500+
for tenant in tenants:
2501+
tenant_contracts = Contract.get(session, tenant)
2502+
for tenant_contract in tenant_contracts:
2503+
contract_filter_entries = FilterEntry.get(session, tenant_contract, tenant)
2504+
for contract_filter_entry in contract_filter_entries:
2505+
filter_entries.append(contract_filter_entry)
2506+
for filter_entry in filter_entries:
2507+
self.assertTrue(isinstance(filter_entry, FilterEntry))
2508+
return filter_entries
2509+
2510+
def test_get_table(self):
2511+
filter_entries = self.test_get()
2512+
self.assertTrue(FilterEntry.get_table(filter_entries), Table)
24412513

24422514

24432515
class TestLiveContracts(TestLiveAPIC):
@@ -2557,7 +2629,7 @@ def test_get_table(self):
25572629
for contract in contracts:
25582630
total_contracts.append(contract)
25592631

2560-
self.assertIsInstance(Contract.get_table(contracts)[0], Table)
2632+
self.assertIsInstance(Contract.get_table(total_contracts)[0], Table)
25612633

25622634

25632635
class TestLiveOSPF(TestLiveAPIC):
@@ -2675,6 +2747,7 @@ def test_get(self):
26752747
self.assertIn(policy.policyType, ['fabric', 'access'])
26762748
self.assertIsInstance(policy.name, str)
26772749
self.check_collection_policy(policy)
2750+
return policies
26782751

26792752
def test_monitor_target(self):
26802753
session = self.login_to_apic()
@@ -2721,6 +2794,7 @@ def test_monitor_stats(self):
27212794
live.addTest(unittest.makeSuite(TestLiveL2ExtDomain))
27222795
live.addTest(unittest.makeSuite(TestLiveL3ExtDomain))
27232796
live.addTest(unittest.makeSuite(TestLiveEPGDomain))
2797+
live.addTest(unittest.makeSuite(TestLiveFilterEntry))
27242798
live.addTest(unittest.makeSuite(TestLiveContracts))
27252799
live.addTest(unittest.makeSuite(TestLiveEndpoint))
27262800
live.addTest(unittest.makeSuite(TestApic))

0 commit comments

Comments
 (0)