Я хочу написать тест для проверки моего WebSocketHandlerDecorator, но у меня возникают некоторые проблемы.
вот ошибка:
java.lang.IllegalArgumentException: делегат не должен быть нулевым
в org.springframework.util.Assert.notNull (Assert.java:193) в
org.springframework.web.socket.handler.WebSocketHandlerDecorator. (WebSocketHandlerDecorator.java:42)
import org.springframework.util.Assert;
import org.springframework.web.socket.CloseStatus;
import org.springframework.web.socket.WebSocketHandler;
import org.springframework.web.socket.WebSocketMessage;
import org.springframework.web.socket.WebSocketSession;
public class MyWebSocketHandlerDecorator extends WebSocketHandlerDecorator {
public MySocketHandlerDecorator(WebSocketHandler delegate) {
super(delegate);
}
@Override
public void handleMessage(final WebSocketSession session, final WebSocketMessage<?> message) throws Exception {
final TextMessage MyMessage = (TextMessage) message;
super.handleMessage(session, MyMessage);
}
}
вот мой тестовый пример:
public class MyWebSocketHandlerDecpratorTest {
@Mock
private WebSocketSession session;
@Mock
WebSocketHandler delegate;
@Spy
private WebSocketHandlerDecorator webSocketHandlerDecorator = new WebSocketHandlerDecorator(delegate);
@InjectMocks
MyWebSocketHandlerDecorator myWebSocketHandlerDecorator;
private TextMessage message;
@Before
public void set_up(){
MockitoAnnotations.initMocks(this);
message = new TextMessage("Test Message".getBytes());
}
@Test
public void handleMessage()throws Exception{
myWebSocketHandlerDecorator.handleMessage(session, message);
verify(webSocketHandlerDecorator, times(1)).handleMessage(session, message);
}
}
Может ли кто-нибудь помочь мне исправить мой тест и выяснить, в чем его проблема?
public WebSocketHandlerDecorator(WebSocketHandler delegate) {
Assert.notNull(delegate, "Delegate must not be null");
this.delegate = delegate;
}