diff --git a/.golangci.yml b/.golangci.yml index 86eb77a8..5dac47df 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -37,6 +37,7 @@ linters: - iface - ineffassign - interfacebloat + - intrange - loggercheck - misspell - nilerr diff --git a/internal/bft/util.go b/internal/bft/util.go index 5437a32b..5d69d6f0 100644 --- a/internal/bft/util.go +++ b/internal/bft/util.go @@ -87,7 +87,7 @@ func getLeaderID( return nodes[view%n] } - for i := range len(nodes) { + for i := range nodes { index := (view + (decisionsInView / decisionsPerLeader)) + uint64(i) node := nodes[index%n] _, exists := blackListed[node] diff --git a/internal/bft/view_test.go b/internal/bft/view_test.go index c6883d4d..c6325e6c 100644 --- a/internal/bft/view_test.go +++ b/internal/bft/view_test.go @@ -1232,9 +1232,9 @@ func TestDiscoverDeliberateCensorship(t *testing.T) { // Send some un-related messages, to ensure we processed the messages before this one. // We send exactly 10 * int(view.N) + 2 (the incoming messages buffer size) so that we // are sure that the above 2 messages were processed. - // Otherwise we might finish the test too early and get a false negative (Sync would have been + // Otherwise, we might finish the test too early and get a false negative (Sync would have been // called wrongly had the test been run for longer). - for i := 0; i < 10*int(view.N)+2; i++ { + for range 10*view.N + 2 { view.HandleMessage(2, prepare) } diff --git a/test/basic_test.go b/test/basic_test.go index 8840067d..a8da971b 100644 --- a/test/basic_test.go +++ b/test/basic_test.go @@ -56,7 +56,7 @@ func TestBasic(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } } @@ -122,7 +122,7 @@ func TestNodeViewChangeWhileInPartition(t *testing.T) { nodes[0].Submit(Request{ID: "1", ClientID: "alice"}) // submit to a node - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { <-nodes[i].Delivered } @@ -190,7 +190,7 @@ func TestRestartFollowers(t *testing.T) { d1 := <-nodes[1].Delivered data = append(data, d0, d1, d2, d3) - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -208,7 +208,7 @@ func TestRestartFollowers(t *testing.T) { d3 = <-nodes[3].Delivered data = append(data, d0, d1, d2, d3) - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } } @@ -244,7 +244,7 @@ func TestLeaderInPartition(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-2; i++ { + for i := range numberOfNodes - 2 { assert.Equal(t, data[i], data[i+1]) } assert.LessOrEqual(t, uint64(2), nodes[2].Consensus.GetLeaderID()) @@ -274,7 +274,7 @@ func TestAfterDecisionLeaderInPartition(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -285,7 +285,7 @@ func TestAfterDecisionLeaderInPartition(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -300,7 +300,7 @@ func TestAfterDecisionLeaderInPartition(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-2; i++ { + for i := range numberOfNodes - 2 { assert.Equal(t, data[i], data[i+1]) } @@ -313,7 +313,7 @@ func TestAfterDecisionLeaderInPartition(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-2; i++ { + for i := range numberOfNodes - 2 { assert.Equal(t, data[i], data[i+1]) } } @@ -343,7 +343,7 @@ func TestLeaderInPartitionWithHealing(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -354,7 +354,7 @@ func TestLeaderInPartitionWithHealing(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -370,7 +370,7 @@ func TestLeaderInPartitionWithHealing(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-2; i++ { + for i := range numberOfNodes - 2 { assert.Equal(t, data[i], data[i+1]) } @@ -427,7 +427,7 @@ func TestMultiLeadersPartition(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-3; i++ { + for i := range numberOfNodes - 3 { assert.Equal(t, data[i], data[i+1]) } @@ -495,7 +495,7 @@ func TestHeartbeatTimeoutCausesViewChange(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-2; i++ { + for i := range numberOfNodes - 2 { assert.Equal(t, data[i], data[i+1]) } } @@ -560,7 +560,7 @@ func TestMultiViewChangeWithNoRequestsTimeout(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-3; i++ { + for i := range numberOfNodes - 3 { assert.Equal(t, data[i], data[i+1]) } } @@ -612,11 +612,11 @@ func TestCatchingUpWithViewChange(t *testing.T) { nodes[0].Submit(Request{ID: "1", ClientID: "alice"}) // submit to leader data := make([]*AppRecord, 0) - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-2; i++ { + for i := range numberOfNodes - 2 { assert.Equal(t, data[i], data[i+1]) } @@ -641,7 +641,7 @@ func TestCatchingUpWithViewChange(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-2; i++ { + for i := range numberOfNodes - 2 { assert.Equal(t, data[i], data[i+1]) } } @@ -670,7 +670,7 @@ func TestLeaderCatchingUpAfterViewChange(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -684,7 +684,7 @@ func TestLeaderCatchingUpAfterViewChange(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-2; i++ { + for i := range numberOfNodes - 2 { assert.Equal(t, data[i], data[i+1]) } @@ -768,7 +768,7 @@ func TestRestartAfterViewChangeAndRestoreNewView(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-2; i++ { + for i := range numberOfNodes - 2 { assert.Equal(t, data[i], data[i+1]) } } @@ -848,7 +848,7 @@ func TestRestoringViewChange(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-3; i++ { + for i := range numberOfNodes - 3 { assert.Equal(t, data[i], data[i+1]) } } @@ -943,10 +943,10 @@ func TestCatchingUpWithSyncAssisted(t *testing.T) { nodes[3].Disconnect() // will need to catch up for i := 1; i <= 10; i++ { - for j := 0; j <= 2; j++ { + for j := range 3 { nodes[j].Submit(Request{ID: fmt.Sprintf("%d", i), ClientID: "alice"}) } - for j := 0; j <= 2; j++ { + for j := range 3 { <-nodes[j].Delivered } } @@ -955,10 +955,10 @@ func TestCatchingUpWithSyncAssisted(t *testing.T) { // We create new batches until it catches up the quorum. for reqID := 11; reqID < 100; reqID++ { - for j := 0; j <= 2; j++ { + for j := range 3 { nodes[j].Submit(Request{ID: fmt.Sprintf("%d", reqID), ClientID: "alice"}) } - for j := 0; j <= 2; j++ { + for j := range 3 { <-nodes[j].Delivered } caughtUp := waitForCatchup(reqID, nodes[3].Delivered) @@ -1010,10 +1010,10 @@ func TestCatchingUpWithSyncAutonomous(t *testing.T) { nodes[3].Disconnect() // will need to catch up for i := 1; i <= 5; i++ { - for j := 0; j <= 2; j++ { + for j := range 3 { nodes[j].Submit(Request{ID: fmt.Sprintf("%d", i), ClientID: "alice"}) } - for j := 0; j <= 2; j++ { + for j := range 3 { <-nodes[j].Delivered } } @@ -1094,7 +1094,7 @@ func TestSyncSameHeightPreservesDecisionsInView(t *testing.T) { // Phase 1: Submit 5 proposals to build up DecisionsInView on all nodes. for i := 1; i <= 5; i++ { nodes[0].Submit(Request{ID: fmt.Sprintf("%d", i), ClientID: "alice"}) - for j := 0; j < numberOfNodes; j++ { + for j := range numberOfNodes { <-nodes[j].Delivered } } @@ -1135,7 +1135,7 @@ func TestSyncSameHeightPreservesDecisionsInView(t *testing.T) { // leader (which has DecisionsInView=5). for i := 6; i <= 10; i++ { nodes[0].Submit(Request{ID: fmt.Sprintf("%d", i), ClientID: "alice"}) - for j := 0; j < numberOfNodes; j++ { + for j := range numberOfNodes { select { case <-nodes[j].Delivered: case <-bugDetected: @@ -1225,7 +1225,7 @@ func TestFollowerStateTransfer(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-3; i++ { + for i := range numberOfNodes - 3 { assert.Equal(t, data[i], data[i+1]) } } @@ -1337,7 +1337,7 @@ func TestLeaderModifiesPreprepare(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -1408,7 +1408,7 @@ func TestLeaderCatchUpWithoutSync(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -1419,7 +1419,7 @@ func TestLeaderCatchUpWithoutSync(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } } @@ -1495,7 +1495,7 @@ func TestLeaderProposeAfterRestartWithoutSync(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -1504,7 +1504,7 @@ func TestLeaderProposeAfterRestartWithoutSync(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } } @@ -1658,7 +1658,7 @@ func TestReconfigAndViewChange(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -1691,7 +1691,7 @@ func TestReconfigAndViewChange(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } } @@ -1761,7 +1761,7 @@ func TestRotateAndViewChange(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -1772,7 +1772,7 @@ func TestRotateAndViewChange(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -1783,7 +1783,7 @@ func TestRotateAndViewChange(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -1807,7 +1807,7 @@ func TestRotateAndViewChange(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } } @@ -2169,7 +2169,7 @@ func TestBlacklistAndRedemption(t *testing.T) { txID := make([]byte, 15) rand.Read(txID) nodes[1].Submit(Request{ID: hex.EncodeToString(txID), ClientID: "alice"}) - for i := 0; i < len(nodes); i++ { + for i := range nodes { select { case <-nodes[i].Delivered: case <-stop: @@ -2293,7 +2293,7 @@ func TestBlacklistMultipleViewChanges(t *testing.T) { txID := make([]byte, 15) rand.Read(txID) nodes[3].Submit(Request{ID: hex.EncodeToString(txID), ClientID: "alice"}) - for i := 0; i < len(nodes); i++ { + for i := range nodes { select { case <-nodes[i].Delivered: case <-stop: @@ -2366,7 +2366,7 @@ func TestNodeInFlightThenViewChange(t *testing.T) { nodes[1].Submit(Request{ID: "second request", ClientID: "alice"}) nodes[2].Submit(Request{ID: "second request", ClientID: "alice"}) - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { <-nodes[i].Delivered // first request <-nodes[i].Delivered // second request } @@ -2374,7 +2374,7 @@ func TestNodeInFlightThenViewChange(t *testing.T) { // Submit a third request to one of the nodes nodes[0].Submit(Request{ID: "third request", ClientID: "alice"}) - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { <-nodes[i].Delivered } @@ -2750,7 +2750,7 @@ func TestViewChangeAfterTryingToFork(t *testing.T) { nodes[5].Disconnect() nodes[4].Disconnect() - for i := 0; i < numberOfNodes-3; i++ { + for i := range numberOfNodes - 3 { nodes[i].Submit(Request{ID: "1", ClientID: "alice"}) // submit to other nodes } @@ -2814,7 +2814,7 @@ ExternalLoop: } } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -2833,7 +2833,7 @@ ExternalLoop: } } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data1[i], data1[i+1]) } } @@ -2921,7 +2921,7 @@ func TestFetchStateWhenSyncReturnsPrevView(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-2; i++ { + for i := range numberOfNodes - 2 { assert.Equal(t, data[i], data[i+1]) } @@ -2972,7 +2972,7 @@ func TestFetchStateWhenSyncReturnsPrevView(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-2; i++ { + for i := range numberOfNodes - 2 { assert.Equal(t, data[i], data[i+1]) } } @@ -3097,7 +3097,7 @@ func TestLeaderStopSendHeartbeat(t *testing.T) { data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } } @@ -3317,7 +3317,7 @@ func TestTryCommittedSequenceTwice(t *testing.T) { nodes[5].Disconnect() nodes[4].Disconnect() - for i := 0; i < numberOfNodes-3; i++ { + for i := range numberOfNodes - 3 { nodes[i].Submit(Request{ID: "1", ClientID: "alice"}) // submit to other nodes } @@ -3381,7 +3381,7 @@ ExternalLoop: } } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -3400,7 +3400,7 @@ ExternalLoop: } } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data1[i], data1[i+1]) } } @@ -3471,7 +3471,7 @@ func TestDecideAndAbortViewAtSameTime(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -3500,7 +3500,7 @@ func TestDecideAndAbortViewAtSameTime(t *testing.T) { } } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } } diff --git a/test/reconfig_test.go b/test/reconfig_test.go index 843f217b..f1ba2b4c 100644 --- a/test/reconfig_test.go +++ b/test/reconfig_test.go @@ -36,7 +36,7 @@ func TestBasicReconfig(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -60,7 +60,7 @@ func TestBasicReconfig(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -70,7 +70,7 @@ func TestBasicReconfig(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } } @@ -124,7 +124,7 @@ func TestPoolPrunedAfterReconfig(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -138,7 +138,7 @@ func TestPoolPrunedAfterReconfig(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } } @@ -165,11 +165,11 @@ func TestBasicAddNodes(t *testing.T) { nodes[0].Submit(Request{ID: "1", ClientID: "alice"}) data1 := make([]*AppRecord, 0) - for i := 0; i < numberOfNodes; i++ { + for i := range numberOfNodes { d := <-nodes[i].Delivered data1 = append(data1, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data1[i], data1[i+1]) } @@ -191,11 +191,11 @@ func TestBasicAddNodes(t *testing.T) { }) data2 := make([]*AppRecord, 0) - for i := 0; i < numberOfNodes; i++ { + for i := range numberOfNodes { d := <-nodes[i].Delivered data2 = append(data2, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data2[i], data2[i+1]) } @@ -214,11 +214,11 @@ func TestBasicAddNodes(t *testing.T) { nodes[0].Submit(Request{ID: "11", ClientID: "alice"}) numberOfNodes = 6 data := make([]*AppRecord, 0) - for i := 0; i < numberOfNodes; i++ { + for i := range numberOfNodes { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } } @@ -249,11 +249,11 @@ func TestBasicRemoveNodes(t *testing.T) { nodes[0].Submit(Request{ID: "1", ClientID: "alice"}) data := make([]*AppRecord, 0) - for i := 0; i < numberOfNodes; i++ { + for i := range numberOfNodes { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -272,11 +272,11 @@ func TestBasicRemoveNodes(t *testing.T) { }) data = make([]*AppRecord, 0) - for i := 0; i < numberOfNodes; i++ { + for i := range numberOfNodes { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -287,11 +287,11 @@ func TestBasicRemoveNodes(t *testing.T) { numberOfNodes = 4 nodes[0].Submit(Request{ID: "11", ClientID: "alice"}) data = make([]*AppRecord, 0) - for i := 0; i < numberOfNodes; i++ { + for i := range numberOfNodes { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } } @@ -318,11 +318,11 @@ func TestAddRemoveNodes(t *testing.T) { nodes[0].Submit(Request{ID: "1", ClientID: "alice"}) data1 := make([]*AppRecord, 0) - for i := 0; i < numberOfNodes; i++ { + for i := range numberOfNodes { d := <-nodes[i].Delivered data1 = append(data1, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data1[i], data1[i+1]) } @@ -346,11 +346,11 @@ func TestAddRemoveNodes(t *testing.T) { }) data2 := make([]*AppRecord, 0) - for i := 0; i < numberOfNodes; i++ { + for i := range numberOfNodes { d := <-nodes[i].Delivered data2 = append(data2, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data2[i], data2[i+1]) } @@ -363,7 +363,7 @@ func TestAddRemoveNodes(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-4; i++ { + for i := range numberOfNodes - 4 { assert.Equal(t, data[i], data1[0]) } data = make([]*AppRecord, 0) @@ -371,17 +371,17 @@ func TestAddRemoveNodes(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-4; i++ { + for i := range numberOfNodes - 4 { assert.Equal(t, data[i], data2[0]) } nodes[9].Submit(Request{ID: "11", ClientID: "alice"}) data3 := make([]*AppRecord, 0) - for i := 0; i < numberOfNodes; i++ { + for i := range numberOfNodes { d := <-nodes[i].Delivered data3 = append(data3, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data3[i], data3[i+1]) } @@ -408,7 +408,7 @@ func TestAddRemoveNodes(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-r; i++ { + for i := range numberOfNodes - r { assert.Equal(t, data[i], data[i+1]) } @@ -421,7 +421,7 @@ func TestAddRemoveNodes(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-nodesToRemove-1; i++ { + for i := range numberOfNodes - nodesToRemove - 1 { assert.Equal(t, data[i], data[i+1]) } } @@ -451,7 +451,7 @@ func TestAddRemoveAddNodes(t *testing.T) { d := <-nodes[i].Delivered data1 = append(data1, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data1[i], data1[i+1]) } @@ -477,7 +477,7 @@ func TestAddRemoveAddNodes(t *testing.T) { d := <-nodes[i].Delivered data2 = append(data2, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data2[i], data2[i+1]) } @@ -496,7 +496,7 @@ func TestAddRemoveAddNodes(t *testing.T) { d := <-nodes[i].Delivered data3 = append(data3, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data3[i], data3[i+1]) } @@ -506,7 +506,7 @@ func TestAddRemoveAddNodes(t *testing.T) { d := <-nodes[i].Delivered data4 = append(data4, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data4[i], data4[i+1]) } @@ -516,7 +516,7 @@ func TestAddRemoveAddNodes(t *testing.T) { d := <-nodes[i].Delivered data5 = append(data5, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data5[i], data5[i+1]) } @@ -535,7 +535,7 @@ func TestAddRemoveAddNodes(t *testing.T) { data6 := make([]*AppRecord, 0) fail := time.After(1 * time.Minute) - for i := 0; i < numberOfNodes+1; i++ { + for i := range numberOfNodes + 1 { select { case d := <-nodes[i].Delivered: data6 = append(data6, d) @@ -576,7 +576,7 @@ func TestViewChangeAfterReconfig(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -604,7 +604,7 @@ func TestViewChangeAfterReconfig(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } @@ -616,7 +616,7 @@ func TestViewChangeAfterReconfig(t *testing.T) { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } } @@ -646,11 +646,11 @@ func TestAddNodeAfterManyRotations(t *testing.T) { for j := 1; j <= blocksNum; j++ { nodes[0].Submit(Request{ID: fmt.Sprintf("%d", j), ClientID: "alice"}) data := make([]*AppRecord, 0) - for i := 0; i < numberOfNodes; i++ { + for i := range numberOfNodes { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } blocks = append(blocks, data[0]) @@ -674,11 +674,11 @@ func TestAddNodeAfterManyRotations(t *testing.T) { }) reconfigBlock := make([]*AppRecord, 0) - for i := 0; i < numberOfNodes; i++ { + for i := range numberOfNodes { d := <-nodes[i].Delivered reconfigBlock = append(reconfigBlock, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, reconfigBlock[i], reconfigBlock[i+1]) } @@ -699,11 +699,11 @@ func TestAddNodeAfterManyRotations(t *testing.T) { nodes[0].Submit(Request{ID: "11", ClientID: "alice"}) numberOfNodes = 5 data := make([]*AppRecord, 0) - for i := 0; i < numberOfNodes; i++ { + for i := range numberOfNodes { d := <-nodes[i].Delivered data = append(data, d) } - for i := 0; i < numberOfNodes-1; i++ { + for i := range numberOfNodes - 1 { assert.Equal(t, data[i], data[i+1]) } }