1
""" Runs all unit tests for the netsnmp package. """
2
# Copyright (c) 2006 Andy Gross. See LICENSE.txt for details.
9
class BasicTests(unittest.TestCase):
12
var = netsnmp.Varbind('sysDescr.0')
13
var = netsnmp.Varbind('sysDescr','0')
14
var = netsnmp.Varbind(
15
'.iso.org.dod.internet.mgmt.mib-2.system.sysDescr','0')
16
var = netsnmp.Varbind(
17
'.iso.org.dod.internet.mgmt.mib-2.system.sysDescr.0')
18
var = netsnmp.Varbind('.1.3.6.1.2.1.1.1.0')
20
var = netsnmp.Varbind('.1.3.6.1.2.1.1.1','0')
22
print "----------------------------------------\n"
23
res = netsnmp.snmpget(var,
28
print "v1 snmpget result: ", res, "\n"
30
print "v1 get var: ", var.tag, var.iid, "=", var.val, '(',var.type,')'
32
print "----------------------------------------\n"
33
res = netsnmp.snmpgetnext(var,
38
print "v1 snmpgetnext result: ", res, "\n"
40
print "v1 getnext var: ", var.tag, var.iid, "=", var.val, '(',var.type,')'
42
print "----------------------------------------\n"
43
var = netsnmp.Varbind('sysLocation','0', 'my new location')
44
res = netsnmp.snmpset(var,
49
print "v1 snmpset result: ", res, "\n"
51
print "v1 set var: ", var.tag, var.iid, "=", var.val, '(',var.type,')'
53
print "----------------------------------------\n"
54
vars = netsnmp.VarList(netsnmp.Varbind('system'))
56
print "v1 varlist walk in: "
58
print " ",var.tag, var.iid, "=", var.val, '(',var.type,')'
60
res = netsnmp.snmpwalk(vars,
64
print "v1 snmpwalk result: ", res, "\n"
67
print var.tag, var.iid, "=", var.val, '(',var.type,')'
70
print "----------------------------------------\n"
72
print "v1 varbind walk in: "
73
var = netsnmp.Varbind('system')
74
res = netsnmp.snmpwalk(var,
78
print "v1 snmpwalk result (should be = orig): ", res, "\n"
80
print var.tag, var.iid, "=", var.val, '(',var.type,')'
82
print "----------------------------------------\n"
83
sess = netsnmp.Session(Version=1,
87
vars = netsnmp.VarList(netsnmp.Varbind('sysUpTime', 0),
88
netsnmp.Varbind('sysContact', 0),
89
netsnmp.Varbind('sysLocation', 0))
91
print "v1 sess.get result: ", vals, "\n"
94
print var.tag, var.iid, "=", var.val, '(',var.type,')'
96
vals = sess.getnext(vars)
97
print "v1 sess.getnext result: ", vals, "\n"
100
print var.tag, var.iid, "=", var.val, '(',var.type,')'
102
vars = netsnmp.VarList(netsnmp.Varbind('sysUpTime'),
103
netsnmp.Varbind('sysORLastChange'),
104
netsnmp.Varbind('sysORID'),
105
netsnmp.Varbind('sysORDescr'),
106
netsnmp.Varbind('sysORUpTime'))
108
vals = sess.getbulk(2, 8, vars)
109
print "v1 sess.getbulk result: ", vals, "\n"
112
print var.tag, var.iid, "=", var.val, '(',var.type,')'
114
print "----------------------------------------\n"
116
vars = netsnmp.VarList(
117
netsnmp.Varbind('sysLocation', '0', 'my newer location'))
119
print "v1 sess.set result: ", res, "\n"
121
print "----------------------------------------\n"
122
vars = netsnmp.VarList(netsnmp.Varbind('system'))
124
vals = sess.walk(vars)
125
print "v1 sess.walk result: ", vals, "\n"
128
print " ",var.tag, var.iid, "=", var.val, '(',var.type,')'
130
print "----------------------------------------\n"
132
sess = netsnmp.Session(Version=2,
133
DestHost='localhost',
137
sess.UseLongNames = 1
139
vars = netsnmp.VarList(netsnmp.Varbind('sysUpTime', 0),
140
netsnmp.Varbind('sysContact', 0),
141
netsnmp.Varbind('sysLocation', 0))
142
vals = sess.get(vars)
143
print "v2 sess.get result: ", vals, "\n"
145
print "----------------------------------------\n"
148
print var.tag, var.iid, "=", var.val, '(',var.type,')'
151
vals = sess.getnext(vars)
152
print "v2 sess.getnext result: ", vals, "\n"
155
print var.tag, var.iid, "=", var.val, '(',var.type,')'
158
print "----------------------------------------\n"
160
vars = netsnmp.VarList(netsnmp.Varbind('sysUpTime'),
161
netsnmp.Varbind('sysORLastChange'),
162
netsnmp.Varbind('sysORID'),
163
netsnmp.Varbind('sysORDescr'),
164
netsnmp.Varbind('sysORUpTime'))
166
vals = sess.getbulk(2, 8, vars)
167
print "v2 sess.getbulk result: ", vals, "\n"
170
print var.tag, var.iid, "=", var.val, '(',var.type,')'
173
print "----------------------------------------\n"
175
vars = netsnmp.VarList(
176
netsnmp.Varbind('sysLocation','0','my even newer location'))
179
print "v2 sess.set result: ", res, "\n"
181
print "----------------------------------------\n"
182
vars = netsnmp.VarList(netsnmp.Varbind('system'))
184
vals = sess.walk(vars)
185
print "v2 sess.walk result: ", vals, "\n"
188
print " ",var.tag, var.iid, "=", var.val, '(',var.type,')'
190
print "----------------------------------------\n"
191
sess = netsnmp.Session(Version=3,
192
DestHost='localhost',
195
PrivPass='priv_pass',
196
AuthPass='auth_pass')
198
sess.UseSprintValue = 1
200
vars = netsnmp.VarList(netsnmp.Varbind('sysUpTime', 0),
201
netsnmp.Varbind('sysContact', 0),
202
netsnmp.Varbind('sysLocation', 0))
203
print "----------------------------------------\n"
204
vals = sess.get(vars)
205
print "v3 sess.get result: ", vals, "\n"
208
print var.tag, var.iid, "=", var.val, '(',var.type,')'
211
print "----------------------------------------\n"
213
vals = sess.getnext(vars)
214
print "v3 sess.getnext result: ", vals, "\n"
217
print var.tag, var.iid, "=", var.val, '(',var.type,')'
220
vars = netsnmp.VarList(netsnmp.Varbind('sysUpTime'),
221
netsnmp.Varbind('sysORLastChange'),
222
netsnmp.Varbind('sysORID'),
223
netsnmp.Varbind('sysORDescr'),
224
netsnmp.Varbind('sysORUpTime'))
226
vals = sess.getbulk(2, 8, vars)
227
print "v3 sess.getbulk result: ", vals, "\n"
230
print var.tag, var.iid, "=", var.val, '(',var.type,')'
233
print "----------------------------------------\n"
235
vars = netsnmp.VarList(
236
netsnmp.Varbind('sysLocation','0', 'my final destination'))
238
print "v3 sess.set result: ", res, "\n"
240
print "----------------------------------------\n"
241
vars = netsnmp.VarList(netsnmp.Varbind('system'))
243
vals = sess.walk(vars)
244
print "v3 sess.walk result: ", vals, "\n"
247
print " ",var.tag, var.iid, "=", var.val, '(',var.type,')'
250
class SetTests(unittest.TestCase):
252
print "\n-------------- SET Test Start ----------------------------\n"
254
var = netsnmp.Varbind('sysUpTime','0')
255
res = netsnmp.snmpget(var, Version = 1, DestHost='localhost',
257
print "uptime = ", res[0]
260
var = netsnmp.Varbind('versionRestartAgent','0', 1)
261
res = netsnmp.snmpset(var, Version = 1, DestHost='localhost',
264
var = netsnmp.Varbind('sysUpTime','0')
265
res = netsnmp.snmpget(var, Version = 1, DestHost='localhost',
267
print "uptime = ", res[0]
269
var = netsnmp.Varbind('nsCacheEntry')
270
res = netsnmp.snmpgetnext(var, Version = 1, DestHost='localhost',
272
print "var = ", var.tag, var.iid, "=", var.val, '(',var.type,')'
275
res = netsnmp.snmpset(var, Version = 1, DestHost='localhost',
277
res = netsnmp.snmpget(var, Version = 1, DestHost='localhost',
279
print "var = ", var.tag, var.iid, "=", var.val, '(',var.type,')'
281
sess = netsnmp.Session(Version = 1, DestHost='localhost',
284
vars = netsnmp.VarList(netsnmp.Varbind('.1.3.6.1.6.3.12.1.2.1.2.116.101.115.116','','.1.3.6.1.6.1.1'),
285
netsnmp.Varbind('.1.3.6.1.6.3.12.1.2.1.3.116.101.115.116','','1234'),
286
netsnmp.Varbind('.1.3.6.1.6.3.12.1.2.1.9.116.101.115.116','', 4))
291
vars = netsnmp.VarList(netsnmp.Varbind('snmpTargetAddrTDomain'),
292
netsnmp.Varbind('snmpTargetAddrTAddress'),
293
netsnmp.Varbind('snmpTargetAddrRowStatus'))
295
res = sess.getnext(vars)
298
print var.tag, var.iid, "=", var.val, '(',var.type,')'
301
vars = netsnmp.VarList(netsnmp.Varbind('.1.3.6.1.6.3.12.1.2.1.9.116.101.115.116','', 6))
307
vars = netsnmp.VarList(netsnmp.Varbind('snmpTargetAddrTDomain'),
308
netsnmp.Varbind('snmpTargetAddrTAddress'),
309
netsnmp.Varbind('snmpTargetAddrRowStatus'))
311
res = sess.getnext(vars)
314
print var.tag, var.iid, "=", var.val, '(',var.type,')'
317
print "\n-------------- SET Test End ----------------------------\n"
320
if __name__=='__main__':