@Override @Before public void setUp() throws Exception { super.setUp(); reclaimer = new Reclaimer(); }
reclaimer.scan(getDataFiles());
reclaimer.scan(getDataFiles());
private final Reclaimer reclaimer = new Reclaimer();
@Override public String debug() throws Exception { reclaimer.scan(getDataFiles()); StringBuilder builder = new StringBuilder(); for (JournalFile file : filesRepository.getDataFiles()) { builder.append("DataFile:" + file + " posCounter = " + file.getPosCount() + " reclaimStatus = " + file.isCanReclaim() + " live size = " + file.getLiveSize() + "\n"); if (file instanceof JournalFileImpl) { builder.append(((JournalFileImpl) file).debug()); } } for (JournalFile file : filesRepository.getFreeFiles()) { builder.append("FreeFile:" + file + "\n"); } if (currentFile != null) { builder.append("CurrentFile:" + currentFile + " posCounter = " + currentFile.getPosCount() + "\n"); if (currentFile instanceof JournalFileImpl) { builder.append(((JournalFileImpl) currentFile).debug()); } } else { builder.append("CurrentFile: No current file at this point!"); } return builder.toString(); }
private final Reclaimer reclaimer = new Reclaimer();
@Override public String debug() throws Exception { reclaimer.scan(getDataFiles()); StringBuilder builder = new StringBuilder(); for (JournalFile file : filesRepository.getDataFiles()) { builder.append("DataFile:" + file + " posCounter = " + file.getPosCount() + " reclaimStatus = " + file.isCanReclaim() + " live size = " + file.getLiveSize() + "\n"); if (file instanceof JournalFileImpl) { builder.append(((JournalFileImpl) file).debug()); } } for (JournalFile file : filesRepository.getFreeFiles()) { builder.append("FreeFile:" + file + "\n"); } if (currentFile != null) { builder.append("CurrentFile:" + currentFile + " posCounter = " + currentFile.getPosCount() + "\n"); if (currentFile instanceof JournalFileImpl) { builder.append(((JournalFileImpl) currentFile).debug()); } } else { builder.append("CurrentFile: No current file at this point!"); } return builder.toString(); }
@Test public void testOneFilePosOnly() throws Exception { setup(1); setupPosNeg(0, 10); reclaimer.scan(files); assertCantDelete(0); }
@Test public void testOneFilePosNegAll() throws Exception { setup(1); setupPosNeg(0, 10, 10); reclaimer.scan(files); assertCanDelete(0); }
@Test public void testOneFileNegOnly() throws Exception { setup(1); setupPosNeg(0, 0, 10); reclaimer.scan(files); assertCanDelete(0); }
@Test public void testOneFilePosNegNotAll() throws Exception { setup(1); setupPosNeg(0, 10, 7); reclaimer.scan(files); assertCantDelete(0); }
@Test public void testTwoFilesPosNegAllDifferentFiles() throws Exception { setup(2); setupPosNeg(0, 10); setupPosNeg(1, 0, 10); reclaimer.scan(files); assertCanDelete(0); assertCanDelete(1); }
@Test public void testTwoFilesPosNegAllFirstFile() throws Exception { setup(2); setupPosNeg(0, 10, 10); setupPosNeg(1, 10); reclaimer.scan(files); assertCanDelete(0); assertCantDelete(1); }
@Test public void testTwoFilesPosNegAllSecondFile() throws Exception { setup(2); setupPosNeg(0, 10); setupPosNeg(1, 10, 0, 10); reclaimer.scan(files); assertCantDelete(0); assertCanDelete(1); }
@Test public void testTwoFilesPosNegAllSameFiles() throws Exception { setup(2); setupPosNeg(0, 10, 10); setupPosNeg(1, 10, 0, 10); reclaimer.scan(files); assertCanDelete(0); assertCanDelete(1); }
@Test public void testTwoFilesPosNegMixedFiles() throws Exception { setup(2); setupPosNeg(0, 10, 7); setupPosNeg(1, 10, 3, 10); reclaimer.scan(files); assertCanDelete(0); assertCanDelete(1); }
@Test public void testTwoFilesPosOnly() throws Exception { setup(2); setupPosNeg(0, 10); setupPosNeg(1, 10); reclaimer.scan(files); assertCantDelete(0); assertCantDelete(1); }
@Test public void testTwoFilesxyz() throws Exception { setup(2); setupPosNeg(0, 10); setupPosNeg(1, 10, 10); reclaimer.scan(files); assertCanDelete(0); assertCantDelete(1); }
@Test public void testThreeFiles2() throws Exception { setup(3); setupPosNeg(0, 10, 7, 0, 0); setupPosNeg(1, 10, 3, 5, 0); setupPosNeg(2, 10, 0, 5, 10); reclaimer.scan(files); assertCanDelete(0); assertCanDelete(1); assertCanDelete(2); }
@Test public void testThreeFiles10() throws Exception { setup(3); setupPosNeg(0, 10, 3, 0, 0); setupPosNeg(1, 10, 0, 10, 0); setupPosNeg(2, 10, 1, 0, 0); reclaimer.scan(files); assertCantDelete(0); assertCanDelete(1); assertCantDelete(2); }