Add unit test to show that the callback method is called.
This commit is contained in:
parent
7ab799c452
commit
83c2fbdcd3
@ -2,18 +2,38 @@ package com.iluwatar.callback;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import com.iluwatar.callback.App;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
/**
|
||||
*
|
||||
* Application test
|
||||
* Add a field as a counter. Every time the callback method is called increment this
|
||||
* field. Unit test checks that the field is being incremented.
|
||||
*
|
||||
* Could be done with mock objects as well where the call method call is verified.
|
||||
*/
|
||||
public class AppTest {
|
||||
|
||||
private Integer callingCount = 0;
|
||||
|
||||
@Test
|
||||
public void test() {
|
||||
String[] args = {};
|
||||
App.main(args);
|
||||
Callback callback = new Callback() {
|
||||
@Override
|
||||
public void call() {
|
||||
callingCount++;
|
||||
}
|
||||
};
|
||||
|
||||
Task task = new SimpleTask();
|
||||
|
||||
assertEquals("Initial calling count of 0", new Integer(0), callingCount);
|
||||
|
||||
task.executeWith(callback);
|
||||
|
||||
assertEquals("Callback called once", new Integer(1), callingCount);
|
||||
|
||||
task.executeWith(callback);
|
||||
|
||||
assertEquals("Callback called twice", new Integer(2), callingCount);
|
||||
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user