Skip to content

Commit ed77cd3

Browse files
author
kkumara3
committed
added getoper to client
1 parent f3443d5 commit ed77cd3

File tree

2 files changed

+25
-0
lines changed

2 files changed

+25
-0
lines changed

client/cisco_grpc_client.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,3 +91,16 @@ def replaceconfig (self, yangjson):
9191
message = ems_grpc_pb2.ConfigArgs(yangjson= yangjson)
9292
response= self._stub.ReplaceConfig(message, self._timeout, metadata = self._metadata)
9393
return response
94+
def getoper (self, path):
95+
""" Get Oper call
96+
:param data: JSON
97+
:type data: str
98+
:return: Return the response object
99+
:rtype: Response stream object
100+
"""
101+
message = ems_grpc_pb2.GetOperArgs(yangpathjson=path)
102+
responses = self._stub.GetOper(message,self._timeout, metadata = self._metadata)
103+
objects = ''
104+
for response in responses:
105+
objects += response.yangjson
106+
return objects

tests/test_cisco_grpc.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ def setUp(self):
1111
self.maxDiff = None
1212
path = '{"Cisco-IOS-XR-ip-static-cfg:router-static": [null]}'
1313
self._result = self.client.getconfig(path)
14+
1415
def test_get(self):
1516
path = '{"Cisco-IOS-XR-ip-static-cfg:router-static": [null]}'
1617
self._result = self.client.getconfig(path)
@@ -19,6 +20,7 @@ def test_get(self):
1920
except ValueError, e:
2021
self.assertTrue(False, e)
2122
self.assertTrue(True)
23+
2224
def test_replace(self):
2325
yangjsonreplace = '{"Cisco-IOS-XR-ip-static-cfg:router-static": {"default-vrf": {"address-family": {"vrfipv4": {"vrf-unicast": {"vrf-prefixes": {"vrf-prefix": [{"prefix": "0.0.0.0", "vrf-route": {"vrf-next-hop-table": {"vrf-next-hop-next-hop-address": [{"next-hop-address": "10.0.2.2"}]}}, "prefix-length": 0}, {"prefix": "1.2.3.5", "vrf-route": {"vrf-next-hop-table": {"vrf-next-hop-next-hop-address": [{"next-hop-address": "10.0.2.2"}]}}, "prefix-length": 32}]}}}}}}}'
2426
response = self.client.replaceconfig(yangjsonreplace)
@@ -27,6 +29,16 @@ def test_merge(self):
2729
yangjsonmerge = '{"Cisco-IOS-XR-ip-static-cfg:router-static": {"default-vrf": {"address-family": {"vrfipv4": {"vrf-unicast": {"vrf-prefixes": {"vrf-prefix": [{"prefix": "1.2.3.6", "vrf-route": {"vrf-next-hop-table": {"vrf-next-hop-next-hop-address": [{"next-hop-address": "10.0.2.2"}]}}, "prefix-length": 32}]}}}}}}}'
2830
response = self.client.mergeconfig(yangjsonmerge)
2931
self.assertEqual(response.errors, u'')
32+
33+
def test_get_oper(self):
34+
path = '{"Cisco-IOS-XR-cdp-oper:cdp": [null]}'
35+
self._result = self.client.getoper(path)
36+
try:
37+
json_object = json.loads(self._result)
38+
except ValueError, e:
39+
self.assertTrue(False, e)
40+
self.assertTrue(True)
41+
3042
def tearDown(self):
3143
response = self.client.replaceconfig(self._result)
3244
if __name__ == '__main__':

0 commit comments

Comments
 (0)