def testDropV1EventForEnterpriseSpecific(self): filterDef = V1FilterDefinition(99, "include", "1.2.3") filterDef.specificTrap = "59" filtersByLevel = {"1.2.3-59": filterDef} filter = TrapFilter() filter._v1Filters[3] = filtersByLevel filterDef = V1FilterDefinition(99, "include", "1.2.3") filterDef.specificTrap = "60" filtersByLevel["1.2.3-60"] = filterDef event = { "snmpVersion": "1", "snmpV1GenericTrapType": 6, "snmpV1Enterprise": "1.2.3", "snmpV1SpecificTrap": 59 } self.assertFalse(filter._dropV1Event(event)) event["snmpV1SpecificTrap"] = 60 self.assertFalse(filter._dropV1Event(event)) event["snmpV1SpecificTrap"] = 1 self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.4" self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2" self.assertTrue(filter._dropV1Event(event))
def testDropV1EventForEnterpriseSpecific(self): filterDef = V1FilterDefinition(99, "include", "1.2.3") filterDef.specificTrap = "59" filtersByLevel = {"1.2.3-59": filterDef} filter = TrapFilter() filter._v1Filters[3] = filtersByLevel filterDef = V1FilterDefinition(99, "include", "1.2.3") filterDef.specificTrap = "60" filtersByLevel["1.2.3-60"] = filterDef event = { "snmpVersion": "1", "snmpV1GenericTrapType": 6, "snmpV1Enterprise": "1.2.3", "snmpV1SpecificTrap": 59 } self.assertFalse(filter._dropV1Event(event)) event["snmpV1SpecificTrap"] = 60 self.assertFalse(filter._dropV1Event(event)) event["snmpV1SpecificTrap"] = 1 self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.4" self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2" self.assertTrue(filter._dropV1Event(event))
def testDropV1EventExcludeAll(self): filterDef = V1FilterDefinition(99, "exclude", "*") filtersByLevel = {filterDef.oid: filterDef} filter = TrapFilter() filter._v1Filters[1] = filtersByLevel event = { "snmpVersion": "1", "snmpV1GenericTrapType": 6, "snmpV1Enterprise": "1" } self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3" self.assertTrue(filter._dropV1Event(event))
def testDropV1EventForEnterpriseSimpleGlobMatch(self): filterDef = V1FilterDefinition(99, "exclude", "1.2.3.*") filtersByLevel = {filterDef.oid: filterDef} filter = TrapFilter() filter._v1Filters[4] = filtersByLevel event = { "snmpVersion": "1", "snmpV1GenericTrapType": 6, "snmpV1Enterprise": "1.2.3.4" } self.assertTrue(filter._dropV1Event(event)) filterDef.action = "include" self.assertFalse(filter._dropV1Event(event))
def testDropV1EventExcludeAll(self): filterDef = V1FilterDefinition(99, "exclude", "*") filtersByLevel = {filterDef.oid: filterDef} filter = TrapFilter() filter._v1Filters[1] = filtersByLevel event = { "snmpVersion": "1", "snmpV1GenericTrapType": 6, "snmpV1Enterprise": "1" } self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3" self.assertTrue(filter._dropV1Event(event))
def testDropV1EventForEnterpriseSimpleGlobMatch(self): filterDef = V1FilterDefinition(99, "exclude", "1.2.3.*") filtersByLevel = {filterDef.oid: filterDef} filter = TrapFilter() filter._v1Filters[4] = filtersByLevel event = { "snmpVersion": "1", "snmpV1GenericTrapType": 6, "snmpV1Enterprise": "1.2.3.4" } self.assertTrue(filter._dropV1Event(event)) filterDef.action = "include" self.assertFalse(filter._dropV1Event(event))
def testDropV1EventForGenericTrapForNoMatch(self): genericTrap = 1 filterDef = GenericTrapFilterDefinition(99, "exclude", genericTrap) filter = TrapFilter() filter._v1Traps[genericTrap] = filterDef event = {"snmpVersion": "1", "snmpV1GenericTrapType": 2} self.assertTrue(filter._dropV1Event(event))
def testDropV1EventForGenericTrapInclusion(self): genericTrap = 0 filterDef = GenericTrapFilterDefinition(99, "include", genericTrap) filter = TrapFilter() filter._v1Traps[genericTrap] = filterDef event = {"snmpVersion": "1", "snmpV1GenericTrapType": genericTrap} self.assertFalse(filter._dropV1Event(event))
def testDropV1EventForMissingGenericTrap(self): filterDef = V1FilterDefinition(99, "include", "*") filtersByLevel = {filterDef.oid: filterDef} filter = TrapFilter() filter._v1Filters[1] = filtersByLevel event = {"snmpVersion": "1", "snmpV1Enterprise": "1.2"} self.assertTrue(filter._dropV1Event(event))
def testDropV1EventForGenericTrapForNoMatch(self): genericTrap = 1 filterDef = GenericTrapFilterDefinition(99, "exclude", genericTrap) filter = TrapFilter() filter._v1Traps[genericTrap] = filterDef event = {"snmpVersion": "1", "snmpV1GenericTrapType": 2} self.assertTrue(filter._dropV1Event(event))
def testDropV1EventForGenericTrapInclusion(self): genericTrap = 0 filterDef = GenericTrapFilterDefinition(99, "include", genericTrap) filter = TrapFilter() filter._v1Traps[genericTrap] = filterDef event = {"snmpVersion": "1", "snmpV1GenericTrapType": genericTrap} self.assertFalse(filter._dropV1Event(event))
def testDropV1EventForSimpleGlobMatches(self): filterDef = V1FilterDefinition(99, "include", "1.2.3.*") filtersByLevel = {filterDef.oid: filterDef} filter = TrapFilter() filter._v1Filters[4] = filtersByLevel filterDef = V1FilterDefinition(99, "include", "1.2.3.4.5.*") filtersByLevel = {filterDef.oid: filterDef} filter._v1Filters[6] = filtersByLevel event = { "snmpVersion": "1", "snmpV1GenericTrapType": 6, "snmpV1Enterprise": "1.2.3.4" } self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.99" self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.99.5" self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.4.99" self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.4.5" self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.4.5.99" self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1" self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3" self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.99.4" self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.99.4.5.6" self.assertTrue(filter._dropV1Event(event))
def testDropV1EventForSimpleGlobMatches(self): filterDef = V1FilterDefinition(99, "include", "1.2.3.*") filtersByLevel = {filterDef.oid: filterDef} filter = TrapFilter() filter._v1Filters[4] = filtersByLevel filterDef = V1FilterDefinition(99, "include", "1.2.3.4.5.*") filtersByLevel = {filterDef.oid: filterDef} filter._v1Filters[6] = filtersByLevel event = { "snmpVersion": "1", "snmpV1GenericTrapType": 6, "snmpV1Enterprise": "1.2.3.4" } self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.99" self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.99.5" self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.4.99" self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.4.5" self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.4.5.99" self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1" self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3" self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.99.4" self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.99.4.5.6" self.assertTrue(filter._dropV1Event(event))
def testDropV1EventForMissingEnterpriseOID(self): filterDef = V1FilterDefinition(99, "include", "*") filtersByLevel = {filterDef.oid: filterDef} filter = TrapFilter() filter._v1Filters[1] = filtersByLevel event = { "snmpVersion": "1", "snmpV1GenericTrapType": 6, } self.assertTrue(filter._dropV1Event(event))
def testDropV1EventExcludeAllBut(self): filterDef = V1FilterDefinition(99, "exclude", "*") filtersByLevel = {filterDef.oid: filterDef} filter = TrapFilter() filter._v1Filters[1] = filtersByLevel filterDef = V1FilterDefinition(99, "include", "1.2.3.*") filtersByLevel = {filterDef.oid: filterDef} filter._v1Filters[4] = filtersByLevel filterDef = V1FilterDefinition(99, "include", "1.4.5") filterDef.specificTrap = "*" filtersByLevel = {"1.4.5-*": filterDef} filter._v1Filters[3] = filtersByLevel event = { "snmpVersion": "1", "snmpV1GenericTrapType": 6, "snmpV1Enterprise": "1" } self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2" self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3" self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.4.5.1" self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.4.5" self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.4.5" event["snmpV1SpecificTrap"] = 23 self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.4" self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.4.5" self.assertFalse(filter._dropV1Event(event))
def testDropV1EventExcludeAllBut(self): filterDef = V1FilterDefinition(99, "exclude", "*") filtersByLevel = {filterDef.oid: filterDef} filter = TrapFilter() filter._v1Filters[1] = filtersByLevel filterDef = V1FilterDefinition(99, "include", "1.2.3.*") filtersByLevel = {filterDef.oid: filterDef} filter._v1Filters[4] = filtersByLevel filterDef = V1FilterDefinition(99, "include", "1.4.5") filterDef.specificTrap = "*" filtersByLevel = {"1.4.5-*": filterDef} filter._v1Filters[3] = filtersByLevel event = { "snmpVersion": "1", "snmpV1GenericTrapType": 6, "snmpV1Enterprise": "1" } self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2" self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3" self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.4.5.1" self.assertTrue(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.4.5" self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.4.5" event["snmpV1SpecificTrap"] = 23 self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.4" self.assertFalse(filter._dropV1Event(event)) event["snmpV1Enterprise"] = "1.2.3.4.5" self.assertFalse(filter._dropV1Event(event))