X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=support%2Fgeneral%2Fsrc%2Ftest%2Fjava%2Forg%2Fwamblee%2Fio%2FDirectoryMonitorTest.java;h=e0048c08ad22679e9e3548f90795d62c74ee1f65;hb=0d8d8f24656e585ee75558cfd6a4c661f8f14985;hp=347857da528b1ef04905ab2a630c1c3f122cb5c3;hpb=8557fbe8c7ea4e1cbcbf10d3c4e8c60c9c1e312b;p=utils diff --git a/support/general/src/test/java/org/wamblee/io/DirectoryMonitorTest.java b/support/general/src/test/java/org/wamblee/io/DirectoryMonitorTest.java index 347857da..e0048c08 100644 --- a/support/general/src/test/java/org/wamblee/io/DirectoryMonitorTest.java +++ b/support/general/src/test/java/org/wamblee/io/DirectoryMonitorTest.java @@ -19,102 +19,100 @@ import static org.mockito.Mockito.*; import junit.framework.TestCase; import org.apache.oro.io.AwkFilenameFilter; -import org.wamblee.test.ResettableMock; public class DirectoryMonitorTest extends TestCase { private static final String REGEX = "^.*\\.txt$"; private static final String FILE1 = "file1.txt"; - private TestData _data; - private ResettableMock _listener; + private TestData data; + private DirectoryMonitor.Listener listener; - private DirectoryMonitor _monitor; + private DirectoryMonitor monitor; @Override protected void setUp() throws Exception { super.setUp(); - _data = new TestData(this); - _data.clean(); - _listener = new ResettableMock( - DirectoryMonitor.Listener.class); - _monitor = new DirectoryMonitor(_data.getRoot(), new AwkFilenameFilter( - REGEX), _listener.getProxy()); + data = new TestData(this); + data.clean(); + listener = mock(DirectoryMonitor.Listener.class); + monitor = new DirectoryMonitor(data.getRoot(), new AwkFilenameFilter( + REGEX), listener); } public void testEmptyDir() { // Nothing is expected to be called. for (int i = 0; i < 10; i++) { - _monitor.poll(); - verifyNoMoreInteractions(_listener.getMock()); + monitor.poll(); + verifyNoMoreInteractions(listener); } } public void testFileCreated() { - _data.createFile(FILE1, "hello"); - _monitor.poll(); - verify(_listener.getMock()).fileCreated(_data.getFile(FILE1)); + data.createFile(FILE1, "hello"); + monitor.poll(); + verify(listener).fileCreated(data.getFile(FILE1)); } public void testFileDeleted() { - _data.createFile(FILE1, "hello"); - _monitor.poll(); - _listener.reset(); + data.createFile(FILE1, "hello"); + monitor.poll(); + reset(listener); - _data.deleteFile(FILE1); - _monitor.poll(); + data.deleteFile(FILE1); + monitor.poll(); - verify(_listener.getMock()).fileDeleted(_data.getFile(FILE1)); - verifyNoMoreInteractions(_listener.getMock()); + verify(listener).fileDeleted(data.getFile(FILE1)); + verifyNoMoreInteractions(listener); } public void testFileChanged() throws InterruptedException { - _data.createFile(FILE1, "hello"); - _monitor.poll(); - _listener.reset(); + data.createFile(FILE1, "hello"); + monitor.poll(); + reset(listener); Thread.sleep(2000); - _data.deleteFile(FILE1); - _data.createFile(FILE1, "bla"); + data.deleteFile(FILE1); + data.createFile(FILE1, "bla"); - _monitor.poll(); - verify(_listener.getMock()).fileChanged(_data.getFile(FILE1)); - verifyNoMoreInteractions(_listener.getMock()); + monitor.poll(); + verify(listener).fileChanged(data.getFile(FILE1)); + verifyNoMoreInteractions(listener); } public void testFileFilterIsUsed() { - _monitor.poll(); + monitor.poll(); - _data.createFile("file.xml", "hello"); - _monitor.poll(); - verifyNoMoreInteractions(_listener.getMock()); + data.createFile("file.xml", "hello"); + monitor.poll(); + verifyNoMoreInteractions(listener); } public void testDirectoryIsIgnored() { - _monitor.poll(); - _data.createDir(FILE1); - _monitor.poll(); - verifyNoMoreInteractions(_listener.getMock()); + monitor.poll(); + data.createDir(FILE1); + monitor.poll(); + verifyNoMoreInteractions(listener); } public void testExceptionsWIllLeadToRepeatedNotifications() { - _monitor.poll(); - _data.createFile(FILE1, "hello"); + monitor.poll(); + data.createFile(FILE1, "hello"); - stubVoid(_listener.getMock()).toThrow(new RuntimeException()).on(). - fileCreated(_data.getFile(FILE1)); + stubVoid(listener).toThrow(new RuntimeException()).on(). + fileCreated(data.getFile(FILE1)); try { - _monitor.poll(); + monitor.poll(); } catch (RuntimeException e) { - _listener.reset(); + reset(listener); // polling again should lead to the same filecreated call. // this time no exception is thrown. - _monitor.poll(); - verify(_listener.getMock()).fileCreated(_data.getFile(FILE1)); - verifyNoMoreInteractions(_listener.getMock()); + monitor.poll(); + verify(listener).fileCreated(data.getFile(FILE1)); + verifyNoMoreInteractions(listener); return; } fail(); // should not get here.