コード例 #1
0
	def testGetPid(self):
		"Test that we can get the conninfo for a particular PID and that it looks correct."
		conntrack._clearmaps()
		conntrack.up(1, "127.0.0.3", ("abc", "def", "GLOBAL"))
		conntrack.up(2, "127.0.0.4", ("test",))
		self.assertEqual(str(conntrack.getpid(1)), "<CI: PID 1, IP 127.0.0.3, classes: abc def GLOBAL>")
		self.assertEqual(str(conntrack.getpid(2)), "<CI: PID 2, IP 127.0.0.4, classes: test>")
コード例 #2
0
	def testGetPids(self):
		"Test that we correctly report what pids we have."
		conntrack._clearmaps()
		self.assertEqual(conntrack.getpids(), [])
		self._up(1)
		self.assertEqual(conntrack.getpids(), [1,])
		self._up(2)
		self._up(3)
		r = conntrack.getpids(); r.sort()
		self.assertEqual(r, [1, 2, 3])
コード例 #3
0
	def testManyClasses(self):
		"""We should correctly add to each class for multi-class connections."""
		conntrack._clearmaps()
		conntrack.up(1, '127.0.0.1', ('foo', 'bar'))
		self.assertEqual(conntrack.classcount('foo'), 1)
		self.assertEqual(conntrack.classcount('bar'), 1)
		conntrack.down(1)
		self.assertEqual(conntrack.classcount('foo'), 0)
		self.assertEqual(conntrack.classcount('bar'), 0)
		self.assertEqual(len(conntrack.activeclasses()), 0)
コード例 #4
0
	def testHasPid(self):
		"Test that we accurately report whether we are tracking a PID."
		conntrack._clearmaps()
		self.assertEqual(conntrack.havepid(1), 0)
		self._up(1)
		self.assertEqual(conntrack.havepid(1), 1)
		self.assertEqual(conntrack.havepid(2), 0)
		self._up(2)
		self.assertEqual(conntrack.havepid(2), 1)
		conntrack.down(1)
		self.assertEqual(conntrack.havepid(2), 1)
		self.assertEqual(conntrack.havepid(1), 0)
		conntrack.down(2)
		self.assertEqual(conntrack.havepid(2), 0)
コード例 #5
0
ファイル: test_actions.py プロジェクト: siebenmann/portnanny
 def testMaxLims(self):
     "Test that connmax and ipmax are correctly handled in see situations."
     rip = "0.0.0.1"
     hi = makehi(rip=rip)
     aroot = actions.fromfile(StringIO(testSeeF), "<t>")
     clsl = genrules(("class50",))
     for ipl, connl, lmsg in self.knownLimVals:
         conntrack._clearmaps()
         for i in range(0, ipl):
             conntrack.up(i, rip, [])
         for i in range(0, connl):
             conntrack.up(i + 100, "NOIP", ["class50"])
         r = aroot.genaction(hi, clsl)
         self.assertEqual(r.logmsgs, lmsg)
         # insure that this stays true if we up class51 too.
         conntrack.up(1000, "NOIP", ["class51"])
         conntrack.up(1001, "NOIP", ["class51"])
         conntrack.up(1002, "NOIP", ["class51"])
         r = aroot.genaction(hi, clsl)
         self.assertEqual(r.logmsgs, lmsg)
コード例 #6
0
	def _start(self, pid):
		conntrack._clearmaps()
		self._up(pid)
コード例 #7
0
	def testRemoveMissing(self):
		"Removing a nonexistent PID succeeds."
		conntrack._clearmaps()
		conntrack.down(1)
コード例 #8
0
	def testEmptyCount(self):
		"Test that we can get a zero count for values not in the system"
		conntrack._clearmaps()
		self.assertEqual(conntrack.ipcount("127.100.100.0"), 0)
		self.assertEqual(conntrack.classcount("FOOBAR"), 0)