### Question:
EthPeer { public boolean isFullyValidated() { for (Boolean isValid : validationStatus.values()) { if (!isValid) { return false; } } return true; } EthPeer(
      final PeerConnection connection,
      final String protocolName,
      final Consumer<EthPeer> onStatusesExchanged,
      final List<PeerValidator> peerValidators,
      final Clock clock); void markValidated(final PeerValidator validator); boolean isFullyValidated(); boolean isDisconnected(); long addChainEstimatedHeightListener(final ChainState.EstimatedHeightListener listener); void removeChainEstimatedHeightListener(final long listenerId); void recordRequestTimeout(final int requestCode); void recordUselessResponse(final String requestType); void disconnect(final DisconnectReason reason); RequestManager.ResponseStream send(final MessageData messageData); RequestManager.ResponseStream getHeadersByHash(
      final Hash hash, final int maxHeaders, final int skip, final boolean reverse); RequestManager.ResponseStream getHeadersByNumber(
      final long blockNumber, final int maxHeaders, final int skip, final boolean reverse); RequestManager.ResponseStream getBodies(final List<Hash> blockHashes); RequestManager.ResponseStream getReceipts(final List<Hash> blockHashes); RequestManager.ResponseStream getNodeData(final Iterable<Hash> nodeHashes); RequestManager.ResponseStream getPooledTransactions(final List<Hash> hashes); Map<Integer, AtomicInteger> timeoutCounts(); void registerKnownBlock(final Hash hash); void registerStatusSent(); void registerStatusReceived(final Hash hash, final Difficulty td); boolean readyForRequests(); boolean statusHasBeenReceived(); boolean statusHasBeenSentToPeer(); boolean hasSeenBlock(final Hash hash); ChainState chainState(); ChainHeadEstimate chainStateSnapshot(); void registerHeight(final Hash blockHash, final long height); int outstandingRequests(); long getLastRequestTimestamp(); boolean hasAvailableRequestCapacity(); Set<Capability> getAgreedCapabilities(); Bytes nodeId(); @Override String toString();  }### Answer:
@Test public void isFullyValidated_noPeerValidators() { final EthPeer peer = createPeer(); assertThat(peer.isFullyValidated()).isTrue(); }
@Test public void isFullyValidated_singleValidator_notValidated() { final PeerValidator validator = mock(PeerValidator.class); final EthPeer peer = createPeer(validator); assertThat(peer.isFullyValidated()).isFalse(); }
@Test public void isFullyValidated_multipleValidators_unvalidated() { final List<PeerValidator> validators = Stream.generate(() -> mock(PeerValidator.class)).limit(2).collect(Collectors.toList()); final EthPeer peer = createPeer(validators); assertThat(peer.isFullyValidated()).isFalse(); }
@Test public void isFullyValidated_multipleValidators_fullyValidated() { final List<PeerValidator> validators = Stream.generate(() -> mock(PeerValidator.class)).limit(2).collect(Collectors.toList()); final EthPeer peer = createPeer(validators); validators.forEach(peer::markValidated); assertThat(peer.isFullyValidated()).isTrue(); }