/** * Generate some strings, put into SortingCollection, confirm that the right number of * Strings come out, and in the right order. * @param numStringsToGenerate * @param maxRecordsInRam */ @Test(dataProvider = "test1") public void testPositive(final String testName, final int numStringsToGenerate, final int maxRecordsInRam) { final String[] strings = new String[numStringsToGenerate]; int numStringsGenerated = 0; final SortingCollection<String> sortingCollection = makeSortingCollection(maxRecordsInRam); for (final String s : new RandomStringGenerator(numStringsToGenerate)) { sortingCollection.add(s); strings[numStringsGenerated++] = s; } Arrays.sort(strings, new StringComparator()); Assert.assertEquals(tmpDirIsEmpty(), numStringsToGenerate <= maxRecordsInRam); sortingCollection.setDestructiveIteration(false); assertIteratorEqualsList(strings, sortingCollection.iterator()); assertIteratorEqualsList(strings, sortingCollection.iterator()); sortingCollection.cleanup(); Assert.assertEquals(tmpDir().list().length, 0); }