import junit.framework.TestCase;
import org.apache.oro.io.AwkFilenameFilter;
-import org.wamblee.test.ResettableMock;
public class DirectoryMonitorTest extends TestCase {
private static final String FILE1 = "file1.txt";
private TestData _data;
- private ResettableMock<DirectoryMonitor.Listener> _listener;
+ private DirectoryMonitor.Listener _listener;
private DirectoryMonitor _monitor;
super.setUp();
_data = new TestData(this);
_data.clean();
- _listener = new ResettableMock<DirectoryMonitor.Listener>(
- DirectoryMonitor.Listener.class);
+ _listener = mock(DirectoryMonitor.Listener.class);
_monitor = new DirectoryMonitor(_data.getRoot(), new AwkFilenameFilter(
- REGEX), _listener.getProxy());
+ REGEX), _listener);
}
public void testEmptyDir() {
// Nothing is expected to be called.
for (int i = 0; i < 10; i++) {
_monitor.poll();
- verifyNoMoreInteractions(_listener.getMock());
+ verifyNoMoreInteractions(_listener);
}
}
public void testFileCreated() {
_data.createFile(FILE1, "hello");
_monitor.poll();
- verify(_listener.getMock()).fileCreated(_data.getFile(FILE1));
+ verify(_listener).fileCreated(_data.getFile(FILE1));
}
public void testFileDeleted() {
_data.createFile(FILE1, "hello");
_monitor.poll();
- _listener.reset();
+ reset(_listener);
_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();
+ reset(_listener);
Thread.sleep(2000);
_data.deleteFile(FILE1);
_data.createFile(FILE1, "bla");
_monitor.poll();
- verify(_listener.getMock()).fileChanged(_data.getFile(FILE1));
- verifyNoMoreInteractions(_listener.getMock());
+ verify(_listener).fileChanged(_data.getFile(FILE1));
+ verifyNoMoreInteractions(_listener);
}
public void testFileFilterIsUsed() {
_data.createFile("file.xml", "hello");
_monitor.poll();
- verifyNoMoreInteractions(_listener.getMock());
+ verifyNoMoreInteractions(_listener);
}
public void testDirectoryIsIgnored() {
_monitor.poll();
_data.createDir(FILE1);
_monitor.poll();
- verifyNoMoreInteractions(_listener.getMock());
+ verifyNoMoreInteractions(_listener);
}
public void testExceptionsWIllLeadToRepeatedNotifications() {
_monitor.poll();
_data.createFile(FILE1, "hello");
- stubVoid(_listener.getMock()).toThrow(new RuntimeException()).on().
+ stubVoid(_listener).toThrow(new RuntimeException()).on().
fileCreated(_data.getFile(FILE1));
try {
_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());
+ verify(_listener).fileCreated(_data.getFile(FILE1));
+ verifyNoMoreInteractions(_listener);
return;
}
fail(); // should not get here.