def run(self): sleep(0.2) sck = socket(AF_INET, SOCK_STREAM) sck = ssl.wrap_socket(sck) sck.connect(('127.0.0.1', TESTING_PORT)) sck = SSLSocket(sck) sck.write('Hello World') self.utc.assertEquals(sck.read(1), '1') self.utc.assertEquals(sck.read(1), '2') sck.close()
def run(self): """@param utc: unit test class""" sleep(0.1) sck = socket(AF_INET, SOCK_STREAM) sck = ssl.wrap_socket(sck) sck.connect(('127.0.0.1', TESTING_PORT)) sck = SSLSocket(sck) sck.write('Hello World') self.pkdata = sck.read(3, less=False, peek=True) self.data = sck.read(1) self.data2 = sck.read(2) self.utc.assertRaises(ChannelClosed, sck.read, 1) sck.close()
def test_failed_connect(self): """ Tests logging in on invalid credentials """ sock = ssl.wrap_socket(socket(AF_INET, SOCK_STREAM)) sock.connect(('127.0.0.1', TESTING_PORT)) sock = SSLSocket(sock) sock.settimeout(5) sock.write(pkjson({'login': '******', 'password': '******'})) response = rdjson(sock) self.assertEquals(response['status'], 'fail')
def test_successful_connect(self): """ Tests logging in on valid credentials """ sock = ssl.wrap_socket(socket(AF_INET, SOCK_STREAM)) sock.connect(('127.0.0.1', TESTING_PORT)) sock = SSLSocket(sock) sock.settimeout(5) sock.write(pkjson({'login': '******', 'password': '******'})) response = rdjson(sock) self.assertEquals(response['status'], 'ok') self.assertEquals(isinstance(self.events_received.get(), PlayerOnline), True)
def test_login_and_timeout(self): """ Tests logging in and then timeouting """ sock = ssl.wrap_socket(socket(AF_INET, SOCK_STREAM)) sock.connect(('127.0.0.1', TESTING_PORT)) sock = SSLSocket(sock) sock.settimeout(15) jsonsocket.TIME_OUT_SECONDS = 5 sock.write(pkjson({'login': '******', 'password': '******'})) response = rdjson(sock) self.assertEquals(isinstance(self.events_received.get(), PlayerOnline), True) self.assertRaises(FatalException, sock.read, 1) # timeout # we should be signalled as timeouters self.assertEquals(isinstance(self.events_received.get(), PlayerOffline), True)
def test_patchthru_connect(self): """ Tests relaying data from EventProcessor to SelectLayer """ sock = ssl.wrap_socket(socket(AF_INET, SOCK_STREAM)) sock.connect(('127.0.0.1', TESTING_PORT)) sock = SSLSocket(sock) sock.settimeout(7) sock.write(pkjson({'login': '******', 'password': '******'})) response = rdjson(sock) self.assertEquals(response['status'], 'ok') # at this point stanislav is logged in and we can force sending data self.events_sent.put(SendData(1, {'hello': 'world'})) jsp = rdjson(sock) self.assertEquals(jsp['hello'], 'world')
def test_login_and_timeout(self): """ Tests logging in and then timeouting """ sock = ssl.wrap_socket(socket(AF_INET, SOCK_STREAM)) sock.connect(('127.0.0.1', TESTING_PORT)) sock = SSLSocket(sock) sock.settimeout(15) jsonsocket.TIME_OUT_SECONDS = 5 sock.write(pkjson({'login': '******', 'password': '******'})) response = rdjson(sock) self.assertEquals(isinstance(self.events_received.get(), PlayerOnline), True) self.assertRaises(FatalException, sock.read, 1) # timeout # we should be signalled as timeouters self.assertEquals( isinstance(self.events_received.get(), PlayerOffline), True)
def test_patchinfo_connect(self): """ Tests relaying data from SelectLayer to EventProcessor """ sock = ssl.wrap_socket(socket(AF_INET, SOCK_STREAM)) sock.connect(('127.0.0.1', TESTING_PORT)) sock = SSLSocket(sock) sock.settimeout(5) sock.write(pkjson({'login': '******', 'password': '******'})) response = rdjson(sock) self.assertEquals(response['status'], 'ok') self.assertEquals(isinstance(self.events_received.get(), PlayerOnline), True) sock.write(pkjson({'test_data': 'indeed'})) el = self.events_received.get() self.assertEquals(isinstance(el, DataArrived), True) self.assertEquals(el.pid, 1) self.assertEquals(el.data['test_data'], 'indeed')