void () { VirtualFile first = tempDirectory.newVirtualDirectory("first/"); VirtualFile second = tempDirectory.newVirtualDirectory("second/"); assertNothingToRescan(); indexableProjectRoots.add(first); indexableRoots.add(second); assertRescanningIndexableSets(YES, first, second); assertNothingToRescan(); indexableProjectRoots.add(second); assertRescanningIndexableSets(YES, second); assertNothingToRescan(); indexableRoots.add(first); assertRescanningIndexableSets(YES, first); indexableProjectRoots.clear(); indexableRoots.clear(); assertNothingToRescanAndFinishIndexing(); indexableProjectRoots.add(first); indexableRoots.add(second); assertRescanningIndexableSets(YES, first, second); assertNothingToRescan(); indexableProjectRoots.add(second); indexableRoots.add(first); assertRescanningIndexableSets(YES, first, second); }