| start(List, Bytes) |   | 80% |   | 50% | 1 | 2 | 3 | 13 | 0 | 1 |
| reachedMaximumNumberOfRounds() |   | 77% |   | 50% | 1 | 2 | 0 | 1 | 0 | 1 |
| onNeighboursReceived(DiscoveryPeer, List) |   | 98% |   | 90% | 1 | 6 | 1 | 18 | 0 | 1 |
| neighboursInitiateRound() |  | 100% |   | 83% | 1 | 4 | 0 | 18 | 0 | 1 |
| bondingInitiateRound() |  | 100% |  | 100% | 0 | 3 | 0 | 13 | 0 | 1 |
| addInitialPeers(List) |  | 100% |  | 100% | 0 | 2 | 0 | 8 | 0 | 1 |
| RecursivePeerRefreshState(RecursivePeerRefreshState.BondingAgent, RecursivePeerRefreshState.FindNeighbourDispatcher, TimerUtil, DiscoveryPeer, PeerTable, PeerDiscoveryPermissions, int, int) |  | 100% | | n/a | 0 | 1 | 0 | 13 | 0 | 1 |
| bondingCancelOutstandingRequests() |  | 100% |  | 100% | 0 | 3 | 0 | 8 | 0 | 1 |
| neighboursCancelOutstandingRequests() |  | 100% |  | 100% | 0 | 3 | 0 | 8 | 0 | 1 |
| satisfiesMapAdditionCriteria(DiscoveryPeer) |  | 100% |   | 75% | 2 | 5 | 0 | 3 | 0 | 1 |
| scheduleTimeout(Runnable) |  | 100% | | n/a | 0 | 1 | 0 | 5 | 0 | 1 |
| neighboursRoundTermination() |  | 100% |  | 100% | 0 | 3 | 0 | 6 | 0 | 1 |
| bondingRoundTermination() |  | 100% |  | 100% | 0 | 3 | 0 | 6 | 0 | 1 |
| onBondingComplete(DiscoveryPeer) |  | 100% |  | 100% | 0 | 4 | 0 | 9 | 0 | 1 |
| neighboursRoundCandidates() |  | 100% | | n/a | 0 | 1 | 0 | 5 | 0 | 1 |
| bondingRoundCandidates() |  | 100% | | n/a | 0 | 1 | 0 | 4 | 0 | 1 |
| performIfNotCancelled(Runnable, AtomicBoolean) |  | 100% |   | 50% | 1 | 2 | 0 | 3 | 0 | 1 |
| lambda$neighboursRoundCandidates$2(RecursivePeerRefreshState.MetadataPeer) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| lambda$bondingRoundCandidates$1(RecursivePeerRefreshState.MetadataPeer) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| lambda$scheduleTimeout$0(Runnable, AtomicBoolean) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| cancel() |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| static {...} |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |