Files
raft-fable/Raft.Test/TestServer.fs
2022-10-27 21:31:48 +01:00

35 lines
1.0 KiB
Forth

namespace Raft.Test
open FsUnitTyped
open NUnit.Framework
open Raft
[<TestFixture>]
module TestServer =
[<Test>]
let ``maxLogAQuorumHasCommitted tests`` () =
for length in 1..7 do
for i in 0..10 do
let i = i * 1<LogIndex>
i
|> Array.create length
|> ServerUtils.maxLogAQuorumHasCommitted
|> shouldEqual i
ServerUtils.maxLogAQuorumHasCommitted [| 0<LogIndex> ; 0<LogIndex> ; 1<LogIndex> |]
|> shouldEqual 0<LogIndex>
ServerUtils.maxLogAQuorumHasCommitted [| 0<LogIndex> ; 1<LogIndex> ; 1<LogIndex> |]
|> shouldEqual 1<LogIndex>
ServerUtils.maxLogAQuorumHasCommitted [| 2<LogIndex> ; 1<LogIndex> ; 1<LogIndex> |]
|> shouldEqual 1<LogIndex>
ServerUtils.maxLogAQuorumHasCommitted [| 2<LogIndex> ; 1<LogIndex> ; 2<LogIndex> |]
|> shouldEqual 2<LogIndex>
ServerUtils.maxLogAQuorumHasCommitted [| 1<LogIndex> ; 2<LogIndex> ; 3<LogIndex> ; 4<LogIndex> |]
|> shouldEqual 2<LogIndex>