This is an automated email from the ASF dual-hosted git repository.

szetszwo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ratis.git

commit a4582726f9ed4c7569033ca031f89f7bc703bcb9
Author: slfan1989 <55643692+slfan1...@users.noreply.github.com>
AuthorDate: Fri May 23 00:21:14 2025 +0800

    RATIS-2303. Migrate ratis-examples tests to Junit 5. (#1267)
---
 .../examples/filestore/FileStoreAsyncBaseTest.java |  2 +-
 .../examples/filestore/FileStoreBaseTest.java      | 30 +++++++++++-----------
 .../filestore/FileStoreStreamingBaseTest.java      | 12 ++++-----
 .../ratis/examples/filestore/FileStoreWriter.java  | 20 +++++++--------
 .../ratis/server/impl/TestReadAfterWrite.java      | 20 +++++++--------
 .../ratis/netty/client/NettyClientStreamRpc.java   |  5 ++--
 .../ratis/datastream/DataStreamTestUtils.java      |  2 +-
 7 files changed, 45 insertions(+), 46 deletions(-)

diff --git 
a/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreAsyncBaseTest.java
 
b/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreAsyncBaseTest.java
index 0b5071c44..ae3d7fc7b 100644
--- 
a/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreAsyncBaseTest.java
+++ 
b/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreAsyncBaseTest.java
@@ -25,7 +25,7 @@ import org.apache.ratis.conf.RaftProperties;
 import org.apache.ratis.statemachine.StateMachine;
 import org.apache.ratis.util.LogUtils;
 import org.apache.ratis.util.SizeInBytes;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git 
a/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreBaseTest.java
 
b/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreBaseTest.java
index 5bcc50039..07668e0f2 100644
--- 
a/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreBaseTest.java
+++ 
b/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreBaseTest.java
@@ -28,8 +28,8 @@ import org.apache.ratis.util.LogUtils;
 import org.apache.ratis.util.SizeInBytes;
 import org.apache.ratis.util.TimeDuration;
 import org.apache.ratis.util.function.CheckedSupplier;
-import org.junit.Assert;
-import org.junit.Test;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -96,22 +96,22 @@ public abstract class FileStoreBaseTest<CLUSTER extends 
MiniRaftCluster>
         });
         firstList.add(f);
         final CompletableFuture<ReadReplyProto> s = 
client.watchAsync(pathSecond + i).whenComplete((reply, e) -> {
-          Assert.assertNotNull(reply);
-          Assert.assertNull(e);
-          Assert.assertTrue(isStarted.get());
+          Assertions.assertNotNull(reply);
+          Assertions.assertNull(e);
+          Assertions.assertTrue(isStarted.get());
           completionOrder.add(index);
         });
         watchSecond.add(s);
-        Assert.assertFalse(f.isDone());
-        Assert.assertFalse(s.isDone());
-        Assert.assertFalse(isStarted.get());
+        Assertions.assertFalse(f.isDone());
+        Assertions.assertFalse(s.isDone());
+        Assertions.assertFalse(isStarted.get());
       }
 
       TimeDuration.valueOf(ThreadLocalRandom.current().nextLong(500) + 100, 
TimeUnit.MILLISECONDS)
           .sleep(s -> LOG.info("{}", s));
-      
firstList.stream().map(CompletableFuture::isDone).forEach(Assert::assertFalse);
-      
watchSecond.stream().map(CompletableFuture::isDone).forEach(Assert::assertFalse);
-      Assert.assertFalse(isStarted.get());
+      
firstList.stream().map(CompletableFuture::isDone).forEach(Assertions::assertFalse);
+      
watchSecond.stream().map(CompletableFuture::isDone).forEach(Assertions::assertFalse);
+      Assertions.assertFalse(isStarted.get());
       isStarted.set(true);
 
       for (int i : randomIndices) {
@@ -121,12 +121,12 @@ public abstract class FileStoreBaseTest<CLUSTER extends 
MiniRaftCluster>
       for (int i = 0; i < n; i++) {
         final ReadReplyProto reply = watchSecond.get(i).get(100, 
TimeUnit.MILLISECONDS);
         LOG.info("reply {}: {}", i, reply);
-        Assert.assertNotNull(reply);
-        Assert.assertEquals(pathSecond + i, 
reply.getResolvedPath().toStringUtf8());
+        Assertions.assertNotNull(reply);
+        Assertions.assertEquals(pathSecond + i, 
reply.getResolvedPath().toStringUtf8());
       }
       LOG.info("completionOrder {}", completionOrder);
-      Assert.assertEquals(randomIndices, completionOrder);
-      
firstList.stream().map(CompletableFuture::isDone).forEach(Assert::assertFalse);
+      Assertions.assertEquals(randomIndices, completionOrder);
+      
firstList.stream().map(CompletableFuture::isDone).forEach(Assertions::assertFalse);
     }
   }
 
diff --git 
a/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreStreamingBaseTest.java
 
b/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreStreamingBaseTest.java
index 490f12c8d..cdcee0ef0 100644
--- 
a/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreStreamingBaseTest.java
+++ 
b/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreStreamingBaseTest.java
@@ -30,8 +30,8 @@ import org.apache.ratis.statemachine.StateMachine;
 import org.apache.ratis.util.LogUtils;
 import org.apache.ratis.util.SizeInBytes;
 import org.apache.ratis.util.function.CheckedSupplier;
-import org.junit.Assert;
-import org.junit.Test;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -69,7 +69,7 @@ public abstract class FileStoreStreamingBaseTest <CLUSTER 
extends MiniRaftCluste
 
     final RaftGroup raftGroup = cluster.getGroup();
     final Collection<RaftPeer> peers = raftGroup.getPeers();
-    Assert.assertEquals(NUM_PEERS, peers.size());
+    Assertions.assertEquals(NUM_PEERS, peers.size());
     RaftPeer primary = peers.iterator().next();
 
     final CheckedSupplier<FileStoreClient, IOException> newClient =
@@ -91,7 +91,7 @@ public abstract class FileStoreStreamingBaseTest <CLUSTER 
extends MiniRaftCluste
 
     final RaftGroup raftGroup = cluster.getGroup();
     final Collection<RaftPeer> peers = raftGroup.getPeers();
-    Assert.assertEquals(NUM_PEERS, peers.size());
+    Assertions.assertEquals(NUM_PEERS, peers.size());
     RaftPeer primary = peers.iterator().next();
 
     final CheckedSupplier<FileStoreClient, IOException> newClient =
@@ -114,7 +114,7 @@ public abstract class FileStoreStreamingBaseTest <CLUSTER 
extends MiniRaftCluste
         .setFileSize(fileLength)
         .setBufferSize(bufferSize)
         .setFileStoreClientSupplier(newClient)
-        .build().streamWriteAndVerify(routingTable);
+        .build().streamWriteAndVerify(routingTable).close();
   }
 
   private void testMultipleFiles(String pathBase, int numFile, SizeInBytes 
fileLength,
@@ -136,7 +136,7 @@ public abstract class FileStoreStreamingBaseTest <CLUSTER 
extends MiniRaftCluste
       writerFutures.add(executor.submit(callable));
     }
     for (Future<FileStoreWriter> future : writerFutures) {
-      future.get();
+      future.get().close();
     }
   }
 }
diff --git 
a/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreWriter.java
 
b/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreWriter.java
index c2b52fa63..c0f7d0809 100644
--- 
a/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreWriter.java
+++ 
b/ratis-examples/src/test/java/org/apache/ratis/examples/filestore/FileStoreWriter.java
@@ -29,7 +29,7 @@ import org.apache.ratis.util.Preconditions;
 import org.apache.ratis.util.SizeInBytes;
 import org.apache.ratis.util.StringUtils;
 import org.apache.ratis.util.function.CheckedSupplier;
-import org.junit.Assert;
+import org.junit.jupiter.api.Assertions;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -129,7 +129,7 @@ final class FileStoreWriter implements Closeable {
       LOG.trace("write {}, offset={}, length={}, close? {}",
           fileName, offset, length, close);
       final long written = client.write(fileName, offset, close, b, sync);
-      Assert.assertEquals(length, written);
+      Assertions.assertEquals(length, written);
       offset += length;
     }
     return this;
@@ -156,15 +156,15 @@ final class FileStoreWriter implements Closeable {
     }
 
     DataStreamReply reply = dataStreamOutput.closeAsync().join();
-    Assert.assertTrue(reply.isSuccess());
+    Assertions.assertTrue(reply.isSuccess());
 
     // TODO: handle when any of the writeAsync has failed.
     // check writeAsync requests
     for (int i = 0; i < futures.size(); i++) {
       reply = futures.get(i).join();
-      Assert.assertTrue(reply.isSuccess());
-      Assert.assertEquals(sizes.get(i).longValue(), reply.getBytesWritten());
-      Assert.assertEquals(reply.getType(), 
RaftProtos.DataStreamPacketHeaderProto.Type.STREAM_DATA);
+      Assertions.assertTrue(reply.isSuccess());
+      Assertions.assertEquals(sizes.get(i).longValue(), 
reply.getBytesWritten());
+      Assertions.assertEquals(reply.getType(), 
RaftProtos.DataStreamPacketHeaderProto.Type.STREAM_DATA);
     }
 
     return this;
@@ -192,7 +192,7 @@ final class FileStoreWriter implements Closeable {
       LOG.trace("writeAsync {}, offset={}, length={}, close? {}",
           fileName, offset, length, close);
       client.writeAsync(fileName, offset, close, b, sync)
-          .thenAcceptAsync(written -> Assert.assertEquals(length, 
(long)written), asyncExecutor)
+          .thenAcceptAsync(written -> Assertions.assertEquals(length, 
(long)written), asyncExecutor)
           .thenRun(() -> {
             final int count = callCount.decrementAndGet();
             LOG.trace("writeAsync {}, offset={}, length={}, close? {}: n={}, 
callCount={}",
@@ -256,12 +256,12 @@ final class FileStoreWriter implements Closeable {
             return null;
           });
     }
-    Assert.assertEquals(size, n.get());
+    Assertions.assertEquals(size, n.get());
     return returnFuture;
   }
 
   void verify(ByteString read, int offset, int length, ByteBuffer expected) {
-    Assert.assertEquals(length, read.size());
+    Assertions.assertEquals(length, read.size());
     assertBuffers(offset, length, expected, read.asReadOnlyByteBuffer());
   }
 
@@ -282,7 +282,7 @@ final class FileStoreWriter implements Closeable {
 
   static void assertBuffers(int offset, int length, ByteBuffer expected, 
ByteBuffer computed) {
     try {
-      Assert.assertEquals(expected, computed);
+      Assertions.assertEquals(expected, computed);
     } catch(AssertionError e) {
       LOG.error("Buffer mismatched at offset=" + offset + ", length=" + length
           + "\n  expected = " + StringUtils.bytes2HexString(expected)
diff --git 
a/ratis-examples/src/test/java/org/apache/ratis/server/impl/TestReadAfterWrite.java
 
b/ratis-examples/src/test/java/org/apache/ratis/server/impl/TestReadAfterWrite.java
index f515628c9..025c7ed0d 100644
--- 
a/ratis-examples/src/test/java/org/apache/ratis/server/impl/TestReadAfterWrite.java
+++ 
b/ratis-examples/src/test/java/org/apache/ratis/server/impl/TestReadAfterWrite.java
@@ -33,9 +33,9 @@ import org.apache.ratis.server.RaftServerConfigKeys;
 import org.apache.ratis.statemachine.StateMachine;
 import org.apache.ratis.util.CodeInjectionForTesting;
 import org.apache.ratis.util.Slf4jUtils;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
 import org.slf4j.event.Level;
 
 import java.util.concurrent.CompletableFuture;
@@ -48,7 +48,7 @@ public class TestReadAfterWrite
     extends BaseTest
     implements MiniRaftClusterWithGrpc.FactoryGet {
 
-  @Before
+  @BeforeEach
   public void setup() {
     Slf4jUtils.setLogLevel(ArithmeticStateMachine.LOG, Level.DEBUG);
     Slf4jUtils.setLogLevel(CodeInjectionForTesting.LOG, Level.DEBUG);
@@ -108,7 +108,7 @@ public class TestReadAfterWrite
     final AsyncApi async = client.async();
     final int initialValue = 10;
     final RaftClientReply assign = async.send(a.assign(new 
DoubleValue(initialValue))).join();
-    Assert.assertTrue(assign.isSuccess());
+    Assertions.assertTrue(assign.isSuccess());
 
     final Message query = Expression.Utils.toMessage(a);
     assertReply(async.sendReadOnly(query), initialValue);
@@ -131,15 +131,15 @@ public class TestReadAfterWrite
       final RaftClientReply reply = readAfterWrite.get(100, 
TimeUnit.MILLISECONDS);
       final DoubleValue result = (DoubleValue) 
Expression.Utils.bytes2Expression(
           reply.getMessage().getContent().toByteArray(), 0);
-      Assert.fail("result=" + result + ", reply=" + reply);
+      Assertions.fail("result=" + result + ", reply=" + reply);
     } catch (TimeoutException e) {
       LOG.info("Good", e);
     }
 
     // plus2 should still be blocked.
-    Assert.assertFalse(plus2.isDone());
+    Assertions.assertFalse(plus2.isDone());
     // readAfterWrite should still be blocked.
-    Assert.assertFalse(readAfterWrite.isDone());
+    Assertions.assertFalse(readAfterWrite.isDone());
 
     // unblock plus2
     blockingCode.complete();
@@ -151,10 +151,10 @@ public class TestReadAfterWrite
   void assertReply(CompletableFuture<RaftClientReply> future, int expected) {
     LOG.info("assertReply, expected {}", expected);
     final RaftClientReply reply = future.join();
-    Assert.assertTrue(reply.isSuccess());
+    Assertions.assertTrue(reply.isSuccess());
     LOG.info("reply {}", reply);
     final DoubleValue result = (DoubleValue) Expression.Utils.bytes2Expression(
         reply.getMessage().getContent().toByteArray(), 0);
-    Assert.assertEquals(expected, (int) (double) result.evaluate(null));
+    Assertions.assertEquals(expected, (int) (double) result.evaluate(null));
   }
 }
diff --git 
a/ratis-netty/src/main/java/org/apache/ratis/netty/client/NettyClientStreamRpc.java
 
b/ratis-netty/src/main/java/org/apache/ratis/netty/client/NettyClientStreamRpc.java
index 534fcc581..5e111daff 100644
--- 
a/ratis-netty/src/main/java/org/apache/ratis/netty/client/NettyClientStreamRpc.java
+++ 
b/ratis-netty/src/main/java/org/apache/ratis/netty/client/NettyClientStreamRpc.java
@@ -339,15 +339,14 @@ public class NettyClientStreamRpc implements 
DataStreamClientRpc {
         try {
           replyMap.receiveReply(reply);
         } catch (Throwable cause) {
-          LOG.warn(name + ": channelRead error:", cause);
+          LOG.warn("{} : channelRead error:", name, cause);
           replyMap.completeExceptionally(cause);
         }
       }
 
       @Override
       public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) {
-        LOG.warn(name + ": exceptionCaught", cause);
-
+        LOG.warn("{} : exceptionCaught", name, cause);
         ctx.close();
       }
 
diff --git 
a/ratis-test/src/test/java/org/apache/ratis/datastream/DataStreamTestUtils.java 
b/ratis-test/src/test/java/org/apache/ratis/datastream/DataStreamTestUtils.java
index a2c3162f5..989b6cd2b 100644
--- 
a/ratis-test/src/test/java/org/apache/ratis/datastream/DataStreamTestUtils.java
+++ 
b/ratis-test/src/test/java/org/apache/ratis/datastream/DataStreamTestUtils.java
@@ -152,7 +152,7 @@ public interface DataStreamTestUtils {
     @Override
     public CompletableFuture<DataStream> stream(RaftClientRequest request) {
       final SingleDataStream s = new SingleDataStream(request);
-      LOG.info("XXX {} put {}, {}", this, ClientInvocationId.valueOf(request), 
s);
+      LOG.info("{} put {}, {}", this, ClientInvocationId.valueOf(request), s);
       streams.put(ClientInvocationId.valueOf(request), s);
       return CompletableFuture.completedFuture(s);
     }

Reply via email to