def test_off_reconnect_mode(self): self.cluster = self.rc.createCluster(None, None) member = self.rc.startMember(self.cluster.id) config = ClientConfig() config.cluster_name = self.cluster.id config.network.addresses.append("localhost:5701") config.connection_strategy.reconnect_mode = RECONNECT_MODE.OFF config.connection_strategy.connection_retry.cluster_connect_timeout = six.MAXSIZE def collector(): events = [] def on_state_change(event): if event == LifecycleState.SHUTDOWN: events.append(event) on_state_change.events = events return on_state_change event_collector = collector() config.add_lifecycle_listener(event_collector) self.client = HazelcastClient(config) m = self.client.get_map(random_string()).blocking() # no exception at this point m.put(1, 1) self.rc.shutdownMember(self.cluster.id, member.uuid) self.assertTrueEventually(lambda: self.assertEqual(1, len(event_collector.events))) with self.assertRaises(HazelcastClientNotActiveError): m.put(1, 1)
def test_async_start(self): self.cluster = self.rc.createCluster(None, None) self.rc.startMember(self.cluster.id) config = ClientConfig() config.cluster_name = self.cluster.id config.network.addresses.append("localhost:5701") config.connection_strategy.async_start = True def collector(): events = [] def on_state_change(event): if event == LifecycleState.CONNECTED: events.append(event) on_state_change.events = events return on_state_change event_collector = collector() config.add_lifecycle_listener(event_collector) self.client = HazelcastClient(config) self.assertTrueEventually(lambda: self.assertEqual(1, len(event_collector.events))) self.client.get_map(random_string())