def test_disconnect(self): '''Test disconnect''' expected = protocol.build_prologue(self.CLUSTER_ID) expected += ''.join( protocol.Hello('testsuite', 'pyrakoon_test').serialize()) # This is not enough data, so we can test disconnect to_send = chr(0) client = self._create_client(_FakeTransport(self, expected, to_send)) deferred = client.hello('testsuite', 'pyrakoon_test') deferred.addErrback(lambda exc: exc.trap(error.ConnectionDone)) client.connectionLost() return deferred
def test_disconnect(self): '''Test disconnect''' expected = protocol.build_prologue(self.CLUSTER_ID) expected += ''.join(protocol.Hello('testsuite', 'pyrakoon_test').serialize()) # This is not enough data, so we can test disconnect to_send = chr(0) client = self._create_client(_FakeTransport(self, expected, to_send)) deferred = client.hello('testsuite', 'pyrakoon_test') deferred.addErrback( lambda exc: exc.trap(error.ConnectionDone)) client.connectionLost() return deferred
def test_hello(self): '''Test a successful 'hello' call''' expected = protocol.build_prologue(self.CLUSTER_ID) expected += ''.join(protocol.Hello('testsuite', 'pyrakoon_test').serialize()) to_send = ''.join(chr(i) for i in itertools.chain( (0, 0, 0, 0), (11, 0, 0, 0), bytes_('arakoon/1.0'), )) client = self._create_client(_FakeTransport(self, expected, to_send)) deferred = client.hello('testsuite', 'pyrakoon_test') deferred.addCallback( lambda value: self.assertEquals(value, 'arakoon/1.0')) return deferred
def _create_client(self): client = compat.ArakoonClient(self.client_config) client.hello('testsuite', self.client_config.getClusterId()) return client