def test_search_vrf(self): """ We should be able to execute search_vrf as read-only user """ v = VRF.search({ 'val1': 'id', 'operator': 'equals', 'val2': 0 }) self.assertEqual(v['result'][0].id, 0)
def find_vrf(self, property, value): """ Find an exact match for a VRF based on property such as rt "209:123", description :param property: :param value: :return: a VRF instance """ retVal = None try: retVal = VRF.search({'val1': property, 'operator': 'equals', 'val2': value})['result'][0] except (KeyError, IndexError): retVal = None return retVal
def get_current_vrfs(self): """ Return VRF filter list from session variable Before returning list, make a search for all VRFs currently in the list to verify that they still exist. """ # Verify that all currently selected VRFs still exists cur_vrfs = session.get('current_vrfs', {}).items() if len(cur_vrfs) > 0: q = { 'operator': 'equals', 'val1': 'id', 'val2': cur_vrfs[0][0] } if len(cur_vrfs) > 1: for vrf_id, vrf in cur_vrfs[1:]: q = { 'operator': 'or', 'val1': q, 'val2': { 'operator': 'equals', 'val1': 'id', 'val2': vrf_id } } res = VRF.search(q) session['current_vrfs'] = {} for vrf in res['result']: session['current_vrfs'][vrf.id] = { 'id': vrf.id, 'rt': vrf.rt, 'name': vrf.name, 'description': vrf.description } session.save() return json.dumps(session.get('current_vrfs', {}))
def get_current_vrfs(self): """ Return VRF filter list from session variable Before returning list, make a search for all VRFs currently in the list to verify that they still exist. """ # Verify that all currently selected VRFs still exists cur_vrfs = session.get('current_vrfs', {}).items() if len(cur_vrfs) > 0: q = {'operator': 'equals', 'val1': 'id', 'val2': cur_vrfs[0][0]} if len(cur_vrfs) > 1: for vrf_id, vrf in cur_vrfs[1:]: q = { 'operator': 'or', 'val1': q, 'val2': { 'operator': 'equals', 'val1': 'id', 'val2': vrf_id } } res = VRF.search(q) session['current_vrfs'] = {} for vrf in res['result']: session['current_vrfs'][vrf.id] = { 'id': vrf.id, 'rt': vrf.rt, 'name': vrf.name, 'description': vrf.description } session.save() return json.dumps(session.get('current_vrfs', {}))