From d0cf96114fa60b8f7e7a671a7749538edec9d877 Mon Sep 17 00:00:00 2001 From: "Jason A. Donenfeld" Date: Thu, 3 Jun 2021 18:22:50 +0200 Subject: device: limit allowedip fuzzer a to 4 times through Trying this for every peer winds up being very slow and precludes it from acceptable runtime in the CI, so reduce this to 4. Signed-off-by: Jason A. Donenfeld --- device/allowedips_rand_test.go | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'device/allowedips_rand_test.go') diff --git a/device/allowedips_rand_test.go b/device/allowedips_rand_test.go index 8d1e633..16de170 100644 --- a/device/allowedips_rand_test.go +++ b/device/allowedips_rand_test.go @@ -13,9 +13,10 @@ import ( ) const ( - NumberOfPeers = 100 - NumberOfAddresses = 250 - NumberOfTests = 10000 + NumberOfPeers = 100 + NumberOfPeerRemovals = 4 + NumberOfAddresses = 250 + NumberOfTests = 10000 ) type SlowNode struct { @@ -103,7 +104,8 @@ func TestTrieRandom(t *testing.T) { slow6 = slow6.Insert(addr6[:], cidr, peers[index]) } - for p := 0; ; p++ { + var p int + for p = 0; ; p++ { for n := 0; n < NumberOfTests; n++ { var addr4 [4]byte rand.Read(addr4[:]) @@ -121,13 +123,16 @@ func TestTrieRandom(t *testing.T) { t.Errorf("Trie did not match naive implementation, for %v: want %p, got %p", net.IP(addr6[:]), peer1, peer2) } } - if p >= len(peers) { + if p >= len(peers) || p >= NumberOfPeerRemovals { break } allowedIPs.RemoveByPeer(peers[p]) slow4 = slow4.RemoveByPeer(peers[p]) slow6 = slow6.RemoveByPeer(peers[p]) } + for ; p < len(peers); p++ { + allowedIPs.RemoveByPeer(peers[p]) + } if allowedIPs.IPv4 != nil || allowedIPs.IPv6 != nil { t.Error("Failed to remove all nodes from trie by peer") -- cgit v1.2.3-59-g8ed1b