修复测试构造与 commons-io 版本不匹配
- RemoteServiceTest 原先调用 ResponseMessage(int, byte),主源码中不存在该构造器, 导致测试源码无法编译;改为在测试内用 setter 组装。 - commons-compress 1.26.1 依赖 commons-io 2.15.1 的 IOUtils.skip(InputStream,long,Supplier), 而 POM 钉在 2.11.0,任何 tar 读取都会抛 NoSuchMethodError;commons-io 升至 2.15.1 (同时覆盖 CVE-2024-47554)。 后端 mvn test 16 项、storageNode 5 项、桌面前端 9 项全部通过。
This commit is contained in:
@@ -88,7 +88,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>commons-io</groupId>
|
<groupId>commons-io</groupId>
|
||||||
<artifactId>commons-io</artifactId>
|
<artifactId>commons-io</artifactId>
|
||||||
<version>2.11.0</version>
|
<version>2.15.1</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
|
|||||||
@@ -11,6 +11,13 @@ import static org.junit.jupiter.api.Assertions.*;
|
|||||||
import static org.mockito.Mockito.*;
|
import static org.mockito.Mockito.*;
|
||||||
|
|
||||||
class RemoteServiceTest {
|
class RemoteServiceTest {
|
||||||
|
private static ResponseMessage response(int messageId, byte result) {
|
||||||
|
ResponseMessage message = new ResponseMessage();
|
||||||
|
message.setMessageId(messageId);
|
||||||
|
message.setResult(result);
|
||||||
|
return message;
|
||||||
|
}
|
||||||
|
|
||||||
private RemoteService service() {
|
private RemoteService service() {
|
||||||
return new RemoteService(mock(GalleryMapper.class), mock(PushService.class),
|
return new RemoteService(mock(GalleryMapper.class), mock(PushService.class),
|
||||||
mock(WebSocketService.class), mock(SubscriptionStandbySnapshotService.class));
|
mock(WebSocketService.class), mock(SubscriptionStandbySnapshotService.class));
|
||||||
@@ -21,7 +28,7 @@ class RemoteServiceTest {
|
|||||||
EmbeddedChannel channel = new EmbeddedChannel(new ChannelOutboundHandlerAdapter() {
|
EmbeddedChannel channel = new EmbeddedChannel(new ChannelOutboundHandlerAdapter() {
|
||||||
@Override public void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise) {
|
@Override public void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise) {
|
||||||
AbstractMessage request = (AbstractMessage) msg;
|
AbstractMessage request = (AbstractMessage) msg;
|
||||||
ctx.fireChannelRead(new ResponseMessage(request.messageId, (byte) 0));
|
ctx.fireChannelRead(response(request.messageId, (byte) 0));
|
||||||
promise.setSuccess();
|
promise.setSuccess();
|
||||||
}
|
}
|
||||||
}, service.new MyChannelInboundHandlerAdapter());
|
}, service.new MyChannelInboundHandlerAdapter());
|
||||||
|
|||||||
Reference in New Issue
Block a user