def test_url_port_not_http(self): upper_daemon = UpperDaemon(EmptyTCPHandler) upper_daemon.start() upper_daemon.wait_for_start() port = upper_daemon.get_port() url = URL('http://127.0.0.1:%s/' % port) self.assertRaises(w3afMustStopOnUrlError, self.uri_opener.GET, url)
def test_timeout(self): upper_daemon = UpperDaemon(TimeoutTCPHandler) upper_daemon.start() upper_daemon.wait_for_start() port = upper_daemon.get_port() url = URL('http://127.0.0.1:%s/' % port) self.uri_opener.settings.set_timeout(1) self.assertRaises(w3afMustStopOnUrlError, self.uri_opener.GET, url) self.uri_opener.settings.set_default_values()
def test_url_port_not_http_many(self): upper_daemon = UpperDaemon(EmptyTCPHandler) upper_daemon.start() upper_daemon.wait_for_start() port = upper_daemon.get_port() url = URL('http://127.0.0.1:%s/' % port) for _ in xrange(MAX_ERROR_COUNT): try: self.uri_opener.GET(url) except w3afMustStopByUnknownReasonExc: self.assertTrue(False, 'Not expecting this exception type.') except w3afMustStopOnUrlError: self.assertTrue(True) except w3afMustStopException: self.assertTrue(True) break else: self.assertTrue(False)
class TestUpperDaemon(unittest.TestCase): ''' This is a unittest for the UpperDaemon which lives in upper_daemon.py @author: Andres Riancho <andres . riancho | gmail . com> ''' def setUp(self): self.upper_daemon = UpperDaemon() self.upper_daemon.start() self.upper_daemon.wait_for_start() def test_basic(self): sent = 'abc' sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.connect(('127.0.0.1', self.upper_daemon.get_port())) sock.sendall(sent) received = sock.recv(3) self.assertEqual(received, sent.upper())