### Question:
RemoteEvent { public Set<DocumentKey> getResolvedLimboDocuments() { return resolvedLimboDocuments; } RemoteEvent(
      SnapshotVersion snapshotVersion,
      Map<Integer, TargetChange> targetChanges,
      Set<Integer> targetMismatches,
      Map<DocumentKey, MaybeDocument> documentUpdates,
      Set<DocumentKey> resolvedLimboDocuments); SnapshotVersion getSnapshotVersion(); Map<Integer, TargetChange> getTargetChanges(); Set<Integer> getTargetMismatches(); Map<DocumentKey, MaybeDocument> getDocumentUpdates(); Set<DocumentKey> getResolvedLimboDocuments(); @Override String toString();  }### Answer:
@Test public void testTracksLimboDocuments() { Map<Integer, TargetData> listens = activeQueries(1); listens.putAll(activeLimboQueries("doc/2", 2)); Document doc1 = doc("docs/1", 1, map("key", "value")); Document doc2 = doc("docs/2", 1, map("key", "value")); Document doc3 = doc("docs/3", 1, map("key", "value")); DocumentChange docChange1 = new DocumentChange(asList(1, 2), emptyList(), doc1.getKey(), doc1); DocumentChange docChange2 = new DocumentChange(asList(2), emptyList(), doc2.getKey(), doc2); DocumentChange docChange3 = new DocumentChange(asList(1), emptyList(), doc3.getKey(), doc3); WatchTargetChange targetsChange = new WatchTargetChange(WatchTargetChangeType.Current, asList(1, 2)); RemoteEvent event = createRemoteEvent( 3, listens, noOutstandingResponses, noExistingKeys, docChange1, docChange2, docChange3, targetsChange); Set<DocumentKey> limboDocuments = event.getResolvedLimboDocuments(); assertFalse(limboDocuments.contains(doc1.getKey())); assertTrue(limboDocuments.contains(doc2.getKey())); assertFalse(limboDocuments.contains(doc3.getKey())); }