* @return the new state, or {@code null} if the state is unchanged
*/
public State process(Forward msg) {
+ if(!getHost().equals(msg.getChannel())) {
+ logger.info("discard Forward message to {} from {} on topic {}", msg.getChannel(), msg.getSource(), getTopic());
+ return null;
+ }
+
logger.info("received Forward message from {} on topic {}", msg.getSource(), getTopic());
mgr.handle(msg);
return null;
@Test
public void testProcessForward() {
Forward msg = new Forward();
+ msg.setChannel(MY_HOST);
assertNull(state.process(msg));
verify(mgr).handle(msg);
@Test
public void testProcessForward() {
- assertNull(state.process(new Forward()));
+ Forward msg = new Forward();
+ msg.setChannel(MY_HOST);
+ assertNull(state.process(msg));
+
+ verify(mgr).handle(msg);
}
@Test
Forward msg = new Forward();
assertNull(state.process(msg));
+ verify(mgr, never()).handle(msg);
+
+ msg.setChannel(MY_HOST);
+ assertNull(state.process(msg));
+
verify(mgr).handle(msg);
}