def setUp(self): global testenv, agent testenv = netsnmpTestEnv() # Create a new netsnmpAgent instance which # - connects to the net-snmp test environment's snmpd instance # - uses its statedir # - loads the TEST-MIB from our tests directory testMIBPath = os.path.abspath(os.path.dirname(__file__)) + \ "/TEST-MIB.txt" agent = netsnmpagent.netsnmpAgent( AgentName = "netsnmpAgentTestAgent", MasterSocket = testenv.mastersocket, PersistenceDir = testenv.statedir, MIBFiles = [ testMIBPath ], ) # Test OIDs for Unsigned32 scalar type agent.Unsigned32( oidstr = "TEST-MIB::testUnsigned32NoInitval", ) agent.Unsigned32( oidstr = "TEST-MIB::testUnsigned32ZeroInitval", initval = 0, ) agent.Unsigned32( oidstr = "TEST-MIB::testUnsigned32MinusOneInitval", initval = -1, ) agent.Unsigned32( oidstr = "TEST-MIB::testUnsigned32MaxInitval", initval = 4294967295, ) agent.Unsigned32( oidstr = "TEST-MIB::testUnsigned32ReadOnly", writable = False, ) # Connect to master snmpd instance agent.start() # Create a separate thread to implement the absolutely most # minimalistic possible agent doing nothing but request handling agent.loop = True def RequestHandler(): while self.agent.loop: agent.check_and_process(False) agent.thread = threading.Thread(target=RequestHandler) agent.thread.daemon = True agent.thread.start()
def setUp(self): global testenv, agent testenv = netsnmpTestEnv() # Create a new netsnmpAgent instance which # - connects to the net-snmp test environment's snmpd instance # - uses its statedir # - loads the TEST-MIB from our tests directory testMIBPath = os.path.abspath(os.path.dirname(__file__)) + \ "/TEST-MIB.txt" agent = netsnmpagent.netsnmpAgent( AgentName="netsnmpAgentTestAgent", MasterSocket=testenv.mastersocket, PersistenceDir=testenv.statedir, MIBFiles=[testMIBPath], ) # Test OIDs for Unsigned32 scalar type agent.Unsigned32(oidstr="TEST-MIB::testUnsigned32NoInitval", ) agent.Unsigned32( oidstr="TEST-MIB::testUnsigned32ZeroInitval", initval=0, ) agent.Unsigned32( oidstr="TEST-MIB::testUnsigned32MinusOneInitval", initval=-1, ) agent.Unsigned32( oidstr="TEST-MIB::testUnsigned32MaxInitval", initval=4294967295, ) agent.Unsigned32( oidstr="TEST-MIB::testUnsigned32ReadOnly", writable=False, ) # Connect to master snmpd instance agent.start() # Create a separate thread to implement the absolutely most # minimalistic possible agent doing nothing but request handling agent.loop = True def RequestHandler(): while self.agent.loop: agent.check_and_process(False) agent.thread = threading.Thread(target=RequestHandler) agent.thread.daemon = True agent.thread.start()
def test_Instantiation(): """ Instantiation without exceptions and within reasonable time """ global testenv, pid, tmpdir # Try creating the instance without raising exceptions testenv = netsnmpTestEnv() # Remember the PID file the tmpdir the instance uses while not os.path.exists(testenv.pidfile): time.sleep(.1) with open(testenv.pidfile, "r") as f: pid = int(f.read()) tmpdir = testenv.tmpdir
def setUp(self): global testenv testenv = netsnmpTestEnv()
def setUp(self): global testenv, agent global settableInteger32, settableUnsigned32, settableTimeTicks global settableOctetString testenv = netsnmpTestEnv() # Create a new netsnmpAgent instance which # - connects to the net-snmp test environment's snmpd instance # - uses its statedir # - loads the TEST-MIB from our tests directory testMIBPath = os.path.abspath(os.path.dirname(__file__)) + \ "/TEST-MIB.txt" agent = netsnmpagent.netsnmpAgent( AgentName="netsnmpAgentTestAgent", MasterSocket=testenv.mastersocket, PersistenceDir=testenv.statedir, MIBFiles=[testMIBPath], ) # Test OIDs for Integer32 scalar type settableInteger32 = agent.Integer32( oidstr="TEST-MIB::testInteger32NoInitval", ) agent.Integer32( oidstr="TEST-MIB::testInteger32ZeroInitval", initval=0, ) agent.Integer32( oidstr="TEST-MIB::testInteger32MinusOneInitval", initval=-1, ) agent.Integer32( oidstr="TEST-MIB::testInteger32MinInitval", initval=-2147483648, ) agent.Integer32( oidstr="TEST-MIB::testInteger32MinMinusOneInitval", initval=-2147483649, ) agent.Integer32( oidstr="TEST-MIB::testInteger32OneInitval", initval=1, ) agent.Integer32( oidstr="TEST-MIB::testInteger32MaxInitval", initval=2147483647, ) agent.Integer32( oidstr="TEST-MIB::testInteger32MaxPlusOneInitval", initval=2147483648, ) agent.Integer32( oidstr="TEST-MIB::testInteger32ReadOnly", writable=False, ) # Test OIDs for Unsigned32 scalar type settableUnsigned32 = agent.Unsigned32( oidstr="TEST-MIB::testUnsigned32NoInitval", ) agent.Unsigned32( oidstr="TEST-MIB::testUnsigned32ZeroInitval", initval=0, ) agent.Unsigned32( oidstr="TEST-MIB::testUnsigned32MinusOneInitval", initval=-1, ) agent.Unsigned32( oidstr="TEST-MIB::testUnsigned32OneInitval", initval=1, ) agent.Unsigned32( oidstr="TEST-MIB::testUnsigned32MaxInitval", initval=4294967295, ) agent.Unsigned32( oidstr="TEST-MIB::testUnsigned32MaxPlusOneInitval", initval=4294967296, ) agent.Unsigned32( oidstr="TEST-MIB::testUnsigned32ReadOnly", writable=False, ) # Test OIDs for Counter32 scalar type agent.Counter32(oidstr="TEST-MIB::testCounter32NoInitval", ) agent.Counter32( oidstr="TEST-MIB::testCounter32ZeroInitval", initval=0, ) agent.Counter32( oidstr="TEST-MIB::testCounter32MinusOneInitval", initval=-1, ) agent.Counter32( oidstr="TEST-MIB::testCounter32OneInitval", initval=1, ) agent.Counter32( oidstr="TEST-MIB::testCounter32MaxInitval", initval=4294967295, ) agent.Counter32( oidstr="TEST-MIB::testCounter32MaxPlusOneInitval", initval=4294967296, ) # Test OIDs for Counter64 scalar type agent.Counter64(oidstr="TEST-MIB::testCounter64NoInitval", ) agent.Counter64( oidstr="TEST-MIB::testCounter64ZeroInitval", initval=0, ) agent.Counter64( oidstr="TEST-MIB::testCounter64MinusOneInitval", initval=-1, ) agent.Counter64( oidstr="TEST-MIB::testCounter64OneInitval", initval=1, ) agent.Counter64( oidstr="TEST-MIB::testCounter64MaxInitval", initval=18446744073709551615, ) agent.Counter64( oidstr="TEST-MIB::testCounter64MaxPlusOneInitval", initval=18446744073709551616, ) # Test OIDs for TimeTicks scalar type settableTimeTicks = agent.TimeTicks( oidstr="TEST-MIB::testTimeTicksNoInitval", ) agent.TimeTicks( oidstr="TEST-MIB::testTimeTicksZeroInitval", initval=0, ) agent.TimeTicks( oidstr="TEST-MIB::testTimeTicksMinusOneInitval", initval=-1, ) agent.TimeTicks( oidstr="TEST-MIB::testTimeTicksOneInitval", initval=1, ) agent.TimeTicks( oidstr="TEST-MIB::testTimeTicksMaxInitval", initval=4294967295, ) agent.TimeTicks( oidstr="TEST-MIB::testTimeTicksMaxPlusOneInitval", initval=4294967296, ) agent.TimeTicks( oidstr="TEST-MIB::testTimeTicksReadOnly", writable=False, ) # Test OIDs for OctetString scalar type settableOctetString = agent.OctetString( oidstr="TEST-MIB::testOctetStringNoInitval", ) agent.OctetString( oidstr="TEST-MIB::testOctetStringEmptyInitval", initval="", ) agent.OctetString( oidstr="TEST-MIB::testOctetStringOneASCIICharInitval", initval="A", ) agent.OctetString( oidstr="TEST-MIB::testOctetStringOneUTF8CharInitval", initval="Ä", ) agent.OctetString( oidstr="TEST-MIB::testOctetString255ASCIICharsInitval", initval="A" * 255, ) agent.OctetString( oidstr="TEST-MIB::testOctetString255UTF8CharsInitval", initval="Ä" * 255, ) agent.OctetString( oidstr="TEST-MIB::testOctetString256ASCIICharsInitval", initval="A" * 256, ) agent.OctetString( oidstr="TEST-MIB::testOctetString256UTF8CharsInitval", initval="Ä" * 256, ) # Connect to master snmpd instance agent.start() # Create a separate thread to implement the absolutely most # minimalistic possible agent doing nothing but request handling agent.loop = True def RequestHandler(): while self.agent.loop: agent.check_and_process(False) agent.thread = threading.Thread(target=RequestHandler) agent.thread.daemon = True agent.thread.start()
def setUp(self): global testenv, agent global settableInteger32, settableUnsigned32, settableTimeTicks global settableOctetString, settableDisplayString testenv = netsnmpTestEnv() # Create a new netsnmpAgent instance which # - connects to the net-snmp test environment's snmpd instance # - uses its statedir # - loads the TEST-MIB from our tests directory testMIBPath = os.path.abspath(os.path.dirname(__file__)) + \ "/TEST-MIB.txt" agent = netsnmpagent.netsnmpAgent( AgentName = "netsnmpAgentTestAgent", MasterSocket = testenv.mastersocket, PersistenceDir = testenv.statedir, MIBFiles = [ testMIBPath ], ) # Test OIDs for Integer32 scalar type settableInteger32 = agent.Integer32( oidstr = "TEST-MIB::testInteger32NoInitval", ) agent.Integer32( oidstr = "TEST-MIB::testInteger32ZeroInitval", initval = 0, ) agent.Integer32( oidstr = "TEST-MIB::testInteger32MinusOneInitval", initval = -1, ) agent.Integer32( oidstr = "TEST-MIB::testInteger32MinInitval", initval = -2147483648, ) agent.Integer32( oidstr = "TEST-MIB::testInteger32MinMinusOneInitval", initval = -2147483649, ) agent.Integer32( oidstr = "TEST-MIB::testInteger32OneInitval", initval = 1, ) agent.Integer32( oidstr = "TEST-MIB::testInteger32MaxInitval", initval = 2147483647, ) agent.Integer32( oidstr = "TEST-MIB::testInteger32MaxPlusOneInitval", initval = 2147483648, ) agent.Integer32( oidstr = "TEST-MIB::testInteger32ReadOnly", writable = False, ) # Test OIDs for Unsigned32 scalar type settableUnsigned32 = agent.Unsigned32( oidstr = "TEST-MIB::testUnsigned32NoInitval", ) agent.Unsigned32( oidstr = "TEST-MIB::testUnsigned32ZeroInitval", initval = 0, ) agent.Unsigned32( oidstr = "TEST-MIB::testUnsigned32MinusOneInitval", initval = -1, ) agent.Unsigned32( oidstr = "TEST-MIB::testUnsigned32OneInitval", initval = 1, ) agent.Unsigned32( oidstr = "TEST-MIB::testUnsigned32MaxInitval", initval = 4294967295, ) agent.Unsigned32( oidstr = "TEST-MIB::testUnsigned32MaxPlusOneInitval", initval = 4294967296, ) agent.Unsigned32( oidstr = "TEST-MIB::testUnsigned32ReadOnly", writable = False, ) # Test OIDs for Counter32 scalar type agent.Counter32( oidstr = "TEST-MIB::testCounter32NoInitval", ) agent.Counter32( oidstr = "TEST-MIB::testCounter32ZeroInitval", initval = 0, ) agent.Counter32( oidstr = "TEST-MIB::testCounter32MinusOneInitval", initval = -1, ) agent.Counter32( oidstr = "TEST-MIB::testCounter32OneInitval", initval = 1, ) agent.Counter32( oidstr = "TEST-MIB::testCounter32MaxInitval", initval = 4294967295, ) agent.Counter32( oidstr = "TEST-MIB::testCounter32MaxPlusOneInitval", initval = 4294967296, ) # Test OIDs for Counter64 scalar type agent.Counter64( oidstr = "TEST-MIB::testCounter64NoInitval", ) agent.Counter64( oidstr = "TEST-MIB::testCounter64ZeroInitval", initval = 0, ) agent.Counter64( oidstr = "TEST-MIB::testCounter64MinusOneInitval", initval = -1, ) agent.Counter64( oidstr = "TEST-MIB::testCounter64OneInitval", initval = 1, ) agent.Counter64( oidstr = "TEST-MIB::testCounter64MaxInitval", initval = 18446744073709551615, ) agent.Counter64( oidstr = "TEST-MIB::testCounter64MaxPlusOneInitval", initval = 18446744073709551616, ) # Test OIDs for Gauge32 scalar type agent.Gauge32( oidstr = "TEST-MIB::testGauge32NoInitval", ) agent.Gauge32( oidstr = "TEST-MIB::testGauge32ZeroInitval", initval = 0, ) agent.Gauge32( oidstr = "TEST-MIB::testGauge32MinusOneInitval", initval = -1, ) agent.Gauge32( oidstr = "TEST-MIB::testGauge32OneInitval", initval = 1, ) agent.Gauge32( oidstr = "TEST-MIB::testGauge32MaxInitval", initval = 4294967295, ) agent.Gauge32( oidstr = "TEST-MIB::testGauge32MaxPlusOneInitval", initval = 4294967296, ) # Test OIDs for TimeTicks scalar type settableTimeTicks = agent.TimeTicks( oidstr = "TEST-MIB::testTimeTicksNoInitval", ) agent.TimeTicks( oidstr = "TEST-MIB::testTimeTicksZeroInitval", initval = 0, ) agent.TimeTicks( oidstr = "TEST-MIB::testTimeTicksMinusOneInitval", initval = -1, ) agent.TimeTicks( oidstr = "TEST-MIB::testTimeTicksOneInitval", initval = 1, ) agent.TimeTicks( oidstr = "TEST-MIB::testTimeTicksMaxInitval", initval = 4294967295, ) agent.TimeTicks( oidstr = "TEST-MIB::testTimeTicksMaxPlusOneInitval", initval = 4294967296, ) agent.TimeTicks( oidstr = "TEST-MIB::testTimeTicksReadOnly", writable = False, ) # Test OIDs for IpAddress scalar type settableIpAddress = agent.IpAddress( oidstr = "TEST-MIB::testIpAddressNoInitval", ) agent.IpAddress( oidstr = "TEST-MIB::testIpAddressEmptyInitval", initval = "" ) agent.IpAddress( oidstr = "TEST-MIB::testIpAddress1234Initval", initval = "1.2.3.4" ) # Test OIDs for TruthValue scalar type settableTruthValue = agent.TruthValue( oidstr = "TEST-MIB::testTruthValueNoInitval", ) agent.TruthValue( oidstr = "TEST-MIB::testTruthValueFalseInitval", initval = False, ) agent.TruthValue( oidstr = "TEST-MIB::testTruthValueTrueInitval", initval = True, ) # Test OIDs for Float scalar type settableFloat = agent.Float( oidstr = "TEST-MIB::testFloatNoInitval", ) agent.Float( oidstr = "TEST-MIB::testFloatZeroPointZeroInitval", initval = 0.0, ) agent.Float( oidstr = "TEST-MIB::testFloatZeroPointOneInitval", initval = 0.1, ) agent.Float( oidstr = "TEST-MIB::testFloatOnePointTwoInitval", initval = 1.2, ) agent.Float( oidstr = "TEST-MIB::testFloatMinusZeroPointOneInitval", initval = -0.1, ) agent.Float( oidstr = "TEST-MIB::testFloatMinusOnePointTwoInitval", initval = -1.2, ) # Test OIDs for OctetString scalar type settableOctetString = agent.OctetString( oidstr = "TEST-MIB::testOctetStringNoInitval", ) agent.OctetString( oidstr = "TEST-MIB::testOctetStringEmptyInitval", initval = "", ) agent.OctetString( oidstr = "TEST-MIB::testOctetStringOneASCIICharInitval", initval = "A", ) agent.OctetString( oidstr = "TEST-MIB::testOctetStringOneUTF8CharInitval", initval = "Ä", ) agent.OctetString( oidstr = "TEST-MIB::testOctetString255ASCIICharsInitval", initval = "A" * 255, ) agent.OctetString( oidstr = "TEST-MIB::testOctetString255UTF8CharsInitval", initval = "Ä" * 255, ) agent.OctetString( oidstr = "TEST-MIB::testOctetString256ASCIICharsInitval", initval = "A" * 256, ) agent.OctetString( oidstr = "TEST-MIB::testOctetString256UTF8CharsInitval", initval = "Ä" * 256, ) # Test OIDs for DisplayString scalar type settableDisplayString = agent.DisplayString( oidstr = "TEST-MIB::testDisplayStringNoInitval", ) agent.DisplayString( oidstr = "TEST-MIB::testDisplayStringEmptyInitval", initval = "", ) agent.DisplayString( oidstr = "TEST-MIB::testDisplayStringOneASCIICharInitval", initval = "A", ) agent.DisplayString( oidstr = "TEST-MIB::testDisplayString255ASCIICharsInitval", initval = "A" * 255, ) agent.DisplayString( oidstr = "TEST-MIB::testDisplayString256ASCIICharsInitval", initval = "A" * 256, ) # Connect to master snmpd instance agent.start() # Create a separate thread to implement the absolutely most # minimalistic possible agent doing nothing but request handling agent.loop = True def RequestHandler(): while self.agent.loop: agent.check_and_process(False) agent.thread = threading.Thread(target=RequestHandler) agent.thread.daemon = True agent.thread.start()