This is an automated email from the ASF dual-hosted git repository.
zhangduo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git
The following commit(s) were added to refs/heads/master by this push:
new 20df93e91ef HBASE-29869 Upgrade hbase-balancer to use junit5
(addendum) (#7744)
20df93e91ef is described below
commit 20df93e91ef56abd4e9b770b9ae7de0e881e6eec
Author: Liu Xiao <[email protected]>
AuthorDate: Fri Feb 13 15:41:02 2026 +0800
HBASE-29869 Upgrade hbase-balancer to use junit5 (addendum) (#7744)
Signed-off-by: Duo Zhang <[email protected]>
---
.../master/balancer/TestBalancerDecision.java | 19 ++++++---------
.../master/balancer/TestBalancerRejection.java | 27 ++++++++++------------
.../TestCacheAwareLoadBalancerCostFunctions.java | 27 +++++++++-------------
3 files changed, 30 insertions(+), 43 deletions(-)
diff --git
a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/balancer/TestBalancerDecision.java
b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/balancer/TestBalancerDecision.java
index 5d1f0777ee6..3ad9c829ec1 100644
---
a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/balancer/TestBalancerDecision.java
+++
b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/balancer/TestBalancerDecision.java
@@ -17,13 +17,13 @@
*/
package org.apache.hadoop.hbase.master.balancer;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
-import org.apache.hadoop.hbase.HBaseClassTestRule;
import org.apache.hadoop.hbase.HConstants;
import org.apache.hadoop.hbase.ServerName;
import org.apache.hadoop.hbase.TableName;
@@ -36,10 +36,8 @@ import
org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest;
import org.apache.hadoop.hbase.namequeues.response.NamedQueueGetResponse;
import org.apache.hadoop.hbase.testclassification.MasterTests;
import org.apache.hadoop.hbase.testclassification.MediumTests;
-import org.junit.Assert;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
import org.apache.hadoop.hbase.shaded.protobuf.ProtobufUtil;
import org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos;
@@ -48,13 +46,10 @@ import
org.apache.hadoop.hbase.shaded.protobuf.generated.RecentLogs;
/**
* Test BalancerDecision ring buffer using namedQueue interface
*/
-@Category({ MasterTests.class, MediumTests.class })
+@Tag(MasterTests.TAG)
+@Tag(MediumTests.TAG)
public class TestBalancerDecision extends StochasticBalancerTestBase {
- @ClassRule
- public static final HBaseClassTestRule CLASS_RULE =
- HBaseClassTestRule.forClass(TestBalancerDecision.class);
-
@Test
public void testBalancerDecisions() {
conf.setBoolean("hbase.master.balancer.decision.buffer.enabled", true);
@@ -79,7 +74,7 @@ public class TestBalancerDecision extends
StochasticBalancerTestBase {
(Map) mockClusterServersWithTables(servers);
List<RegionPlan> plans = loadBalancer.balanceCluster(LoadOfAllTable);
boolean emptyPlans = plans == null || plans.isEmpty();
- Assert.assertTrue(emptyPlans || needsBalanceIdleRegion(mockCluster));
+ assertTrue(emptyPlans || needsBalanceIdleRegion(mockCluster));
}
}
final NamedQueueGetRequest namedQueueGetRequest = new
NamedQueueGetRequest();
@@ -93,7 +88,7 @@ public class TestBalancerDecision extends
StochasticBalancerTestBase {
MasterProtos.BalancerDecisionsResponse response =
MasterProtos.BalancerDecisionsResponse
.newBuilder().addAllBalancerDecision(balancerDecisions).build();
List<LogEntry> balancerDecisionRecords =
ProtobufUtil.getBalancerDecisionEntries(response);
- Assert.assertTrue(balancerDecisionRecords.size() > 160);
+ assertTrue(balancerDecisionRecords.size() > 160);
} finally {
// reset config
conf.unset(HConstants.HBASE_MASTER_LOADBALANCE_BYTABLE);
diff --git
a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/balancer/TestBalancerRejection.java
b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/balancer/TestBalancerRejection.java
index c5d8223479e..5fe056887ca 100644
---
a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/balancer/TestBalancerRejection.java
+++
b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/balancer/TestBalancerRejection.java
@@ -17,13 +17,15 @@
*/
package org.apache.hadoop.hbase.master.balancer;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import java.util.List;
import java.util.Map;
import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.hbase.HBaseClassTestRule;
import org.apache.hadoop.hbase.ServerName;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.client.LogEntry;
@@ -34,10 +36,8 @@ import
org.apache.hadoop.hbase.namequeues.request.NamedQueueGetRequest;
import org.apache.hadoop.hbase.namequeues.response.NamedQueueGetResponse;
import org.apache.hadoop.hbase.testclassification.MasterTests;
import org.apache.hadoop.hbase.testclassification.MediumTests;
-import org.junit.Assert;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
import org.apache.hadoop.hbase.shaded.protobuf.ProtobufUtil;
import org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos;
@@ -46,13 +46,10 @@ import
org.apache.hadoop.hbase.shaded.protobuf.generated.RecentLogs;
/**
* Test BalancerRejection ring buffer using namedQueue interface
*/
-@Category({ MasterTests.class, MediumTests.class })
+@Tag(MasterTests.TAG)
+@Tag(MediumTests.TAG)
public class TestBalancerRejection extends StochasticBalancerTestBase {
- @ClassRule
- public static final HBaseClassTestRule CLASS_RULE =
- HBaseClassTestRule.forClass(TestBalancerRejection.class);
-
static class MockCostFunction extends CostFunction {
public static double mockCost;
@@ -90,13 +87,13 @@ public class TestBalancerRejection extends
StochasticBalancerTestBase {
// Reject case 1: Total cost < 0
MockCostFunction.mockCost = -Double.MAX_VALUE;
// Since the Balancer was rejected, there should not be any plans
- Assert.assertNull(loadBalancer.balanceCluster(LoadOfAllTable));
+ assertNull(loadBalancer.balanceCluster(LoadOfAllTable));
// Reject case 2: Cost < minCostNeedBalance
MockCostFunction.mockCost = 1;
conf.setFloat("hbase.master.balancer.stochastic.minCostNeedBalance",
Float.MAX_VALUE);
loadBalancer.onConfigurationChange(conf);
- Assert.assertNull(loadBalancer.balanceCluster(LoadOfAllTable));
+ assertNull(loadBalancer.balanceCluster(LoadOfAllTable));
// NamedQueue is an async Producer-consumer Pattern, waiting here until
it completed
int maxWaitingCount = 10;
@@ -105,9 +102,9 @@ public class TestBalancerRejection extends
StochasticBalancerTestBase {
}
// There are two cases, should be 2 logEntries
List<LogEntry> logEntries = getBalancerRejectionLogEntries(provider);
- Assert.assertEquals(2, logEntries.size());
-
Assert.assertTrue(logEntries.get(0).toJsonPrettyPrint().contains("minCostNeedBalance"));
-
Assert.assertTrue(logEntries.get(1).toJsonPrettyPrint().contains("cost1*multiplier1"));
+ assertEquals(2, logEntries.size());
+
assertTrue(logEntries.get(0).toJsonPrettyPrint().contains("minCostNeedBalance"));
+
assertTrue(logEntries.get(1).toJsonPrettyPrint().contains("cost1*multiplier1"));
} finally {
conf.unset(StochasticLoadBalancer.COST_FUNCTIONS_COST_FUNCTIONS_KEY);
conf.unset(BaseLoadBalancer.BALANCER_REJECTION_BUFFER_ENABLED);
diff --git
a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/balancer/TestCacheAwareLoadBalancerCostFunctions.java
b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/balancer/TestCacheAwareLoadBalancerCostFunctions.java
index 448e576b1bc..0551adf9601 100644
---
a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/balancer/TestCacheAwareLoadBalancerCostFunctions.java
+++
b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/balancer/TestCacheAwareLoadBalancerCostFunctions.java
@@ -17,33 +17,28 @@
*/
package org.apache.hadoop.hbase.master.balancer;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.hbase.HBaseClassTestRule;
import org.apache.hadoop.hbase.HConstants;
import org.apache.hadoop.hbase.ServerName;
import org.apache.hadoop.hbase.testclassification.MasterTests;
import org.apache.hadoop.hbase.testclassification.MediumTests;
import org.apache.hadoop.hbase.util.Pair;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Tag;
+import org.junit.jupiter.api.Test;
-@Category({ MasterTests.class, MediumTests.class })
+@Tag(MasterTests.TAG)
+@Tag(MediumTests.TAG)
public class TestCacheAwareLoadBalancerCostFunctions extends
StochasticBalancerTestBase {
- @ClassRule
- public static final HBaseClassTestRule CLASS_RULE =
- HBaseClassTestRule.forClass(TestCacheAwareLoadBalancerCostFunctions.class);
-
// Mapping of test -> expected cache cost
private final float[] expectedCacheCost = { 0.0f, 0.0f, 0.5f, 1.0f, 0.0f,
0.572f, 0.0f, 0.075f };
@@ -185,12 +180,12 @@ public class TestCacheAwareLoadBalancerCostFunctions
extends StochasticBalancerT
private CacheAwareLoadBalancer loadBalancer = new CacheAwareLoadBalancer();
- @BeforeClass
+ @BeforeAll
public static void saveInitialConfiguration() {
storedConfiguration = new Configuration(conf);
}
- @Before
+ @BeforeEach
public void beforeEachTest() {
conf = new Configuration(storedConfiguration);
loadBalancer.loadConf(conf);