//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldTimeoutIfLeaderCommitIsNeverKnown() throws Exception //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: public virtual void ShouldTimeoutIfLeaderCommitIsNeverKnown() { OnDemandJobScheduler jobScheduler = new OnDemandJobScheduler(); MembershipWaiter waiter = new MembershipWaiter(member(0), jobScheduler, () => _dbHealth, 1, NullLogProvider.Instance, new Monitors()); ExposedRaftState raftState = RaftStateBuilder.raftState().leaderCommit(-1).build().copy(); RaftMachine raft = mock(typeof(RaftMachine)); when(raft.State()).thenReturn(raftState); CompletableFuture <bool> future = waiter.WaitUntilCaughtUpMember(raft); jobScheduler.RunJob(); try { future.get(10, MILLISECONDS); fail("Should have timed out."); } catch (TimeoutException) { // expected } }
internal Evaluator(MembershipWaiter outerInstance, RaftMachine raft, CompletableFuture <bool> catchUpFuture, System.Func <DatabaseHealth> dbHealthSupplier) { this._outerInstance = outerInstance; this.Raft = raft; this.CatchUpFuture = catchUpFuture; this.LastLeaderCommit = raft.State().leaderCommit(); this.DbHealthSupplier = dbHealthSupplier; }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldWaitUntilLeaderCommitIsAvailable() throws Exception //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: public virtual void ShouldWaitUntilLeaderCommitIsAvailable() { OnDemandJobScheduler jobScheduler = new OnDemandJobScheduler(); MembershipWaiter waiter = new MembershipWaiter(member(0), jobScheduler, () => _dbHealth, 500, NullLogProvider.Instance, new Monitors()); InMemoryRaftLog raftLog = new InMemoryRaftLog(); raftLog.Append(new RaftLogEntry(0, valueOf(0))); ExposedRaftState raftState = RaftStateBuilder.raftState().votingMembers(member(0)).leaderCommit(0).entryLog(raftLog).commitIndex(0L).build().copy(); RaftMachine raft = mock(typeof(RaftMachine)); when(raft.State()).thenReturn(raftState); CompletableFuture <bool> future = waiter.WaitUntilCaughtUpMember(raft); jobScheduler.RunJob(); future.get(1, TimeUnit.SECONDS); }