def testMultiIPConnects(self):
		"""We should correctly count how many times the same IP is connected, even with different classes."""
		self._start(1)
		conntrack.up(2, '127.0.0.1', ('foo',))
		self.assertEqual(conntrack.ipcount('127.0.0.1'), 2)
		conntrack.up(3, '127.0.0.1', ('bar',))
		self.assertEqual(conntrack.ipcount('127.0.0.1'), 3)
		conntrack.down(1)
		self.assertEqual(conntrack.ipcount('127.0.0.1'), 2)
		conntrack.down(3)
		self.assertEqual(conntrack.ipcount('127.0.0.1'), 1)
Exemple #2
0
	def doesfail(self, hi, what, cls = None):
		if what not in self.dirs:
			return False
		if not cls:
			cls = self
		val = self.dirs[what]
		if what == "reject":
			return True
		elif what == "ipmax":
			return conntrack.ipcount(hi.getip()) >= val
		else:
			return conntrack.classcount(cls.name) >= val
	def testInsertRemove(self):
		"""If we insert then remove, the result should be null."""
		self._start(1)
		conntrack.down(1)
		self.assertEqual(conntrack.ipcount('127.0.0.1'), 0)
		self.assertEqual(conntrack.classcount('ALL'), 0)
	def testInsert(self):
		"""If we insert, we should get expected results."""
		self._start(1)
		self.assertEqual(conntrack.ipcount('127.0.0.1'), 1)
		self.assertEqual(conntrack.classcount('ALL'), 1)
	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)