### Question:
DecidingSyncState extends BaseSyncState { @Override public void tick(Duration duration) { knownPeers.cleanExpired(); timeElapsed = timeElapsed.plus(duration); if (knownPeers.count() > 0 && timeElapsed.compareTo(syncConfiguration.getTimeoutWaitingPeers()) >= 0) { tryStartSyncing(); } } DecidingSyncState(SyncConfiguration syncConfiguration, SyncEventsHandler syncEventsHandler, SyncInformation syncInformation, PeersInformation knownPeers); @Override void newPeerStatus(); @Override void tick(Duration duration);  }### Answer:
@Test public void doesntStartSyncingWithNoPeersAfter2Minutes() { SyncConfiguration syncConfiguration = SyncConfiguration.DEFAULT; SimpleSyncEventsHandler syncEventsHandler = new SimpleSyncEventsHandler(); SimpleSyncInformation syncInformation = new SimpleSyncInformation(); PeersInformation knownPeers = new PeersInformation(syncInformation, UscMockFactory.getChannelManager(), syncConfiguration); SyncState syncState = new DecidingSyncState(syncConfiguration, syncEventsHandler, syncInformation, knownPeers); syncState.tick(Duration.ofMinutes(2)); Assert.assertFalse(syncEventsHandler.startSyncingWasCalled()); }