public void Should_work_with_suspended_state() { var state = ClientHolderState.CreateSuspended(TimeBudget.StartNew(9.Seconds())); state.ConnectionState.Should().Be(ConnectionState.Disconnected); state.ConnectionWatcher.Should().BeNull(); state.TimeBeforeReset.Total.Should().Be(9.Seconds()); state.IsSuspended.Should().BeTrue(); state.IsConnected.Should().BeFalse(); state.ConnectionString.Should().BeNull(); state.Dispose(); }
public static ClientHolderState CreateActiveClientHolderState(ZooKeeperClientSettings settings) { var connectionString = settings.ConnectionStringProvider(); var connectionWatcher = new ConnectionWatcher(_ => {}); var client = new Lazy <ZooKeeperNetExClient>( () => { using (ExecutionContext.SuppressFlow()) { return(new ZooKeeperNetExClient( connectionString, settings.ToInnerConnectionTimeout(), connectionWatcher, settings.CanBeReadOnly)); } }, LazyThreadSafetyMode.ExecutionAndPublication); return(ClientHolderState.CreateActive(client, connectionWatcher, ConnectionState.Connected, connectionString, settings)); }