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

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


The following commit(s) were added to refs/heads/master by this push:
     new 351a6594a10 HDDS-12953. Directly create DataNodeSafeModeRule in 
TestDataNodeSafeModeRule (#8716)
351a6594a10 is described below

commit 351a6594a1083ff5e205ca491bf517737111ec9e
Author: RUEI TING HUNG <rthun...@gmail.com>
AuthorDate: Mon Jun 30 04:53:42 2025 +0800

    HDDS-12953. Directly create DataNodeSafeModeRule in 
TestDataNodeSafeModeRule (#8716)
    
    Co-authored-by: Peter Lee <peterx...@gmail.com>
---
 .../scm/safemode/TestDataNodeSafeModeRule.java     | 23 ++++++----------------
 1 file changed, 6 insertions(+), 17 deletions(-)

diff --git 
a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/safemode/TestDataNodeSafeModeRule.java
 
b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/safemode/TestDataNodeSafeModeRule.java
index eab3f1cf2b8..c62293e7648 100644
--- 
a/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/safemode/TestDataNodeSafeModeRule.java
+++ 
b/hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/safemode/TestDataNodeSafeModeRule.java
@@ -32,12 +32,7 @@
 import org.apache.hadoop.hdds.conf.OzoneConfiguration;
 import org.apache.hadoop.hdds.protocol.DatanodeDetails;
 import org.apache.hadoop.hdds.protocol.MockDatanodeDetails;
-import org.apache.hadoop.hdds.scm.HddsTestUtils;
-import org.apache.hadoop.hdds.scm.container.ContainerInfo;
-import org.apache.hadoop.hdds.scm.container.ContainerManager;
 import org.apache.hadoop.hdds.scm.events.SCMEvents;
-import org.apache.hadoop.hdds.scm.ha.SCMContext;
-import org.apache.hadoop.hdds.scm.ha.SCMServiceManager;
 import org.apache.hadoop.hdds.scm.node.NodeManager;
 import org.apache.hadoop.hdds.scm.node.NodeStatus;
 import 
org.apache.hadoop.hdds.scm.server.SCMDatanodeProtocolServer.NodeRegistrationContainerReport;
@@ -56,9 +51,8 @@ public class TestDataNodeSafeModeRule {
   private Path tempDir;
   private DataNodeSafeModeRule rule;
   private EventQueue eventQueue;
-  private SCMServiceManager serviceManager;
-  private SCMContext scmContext;
   private NodeManager nodeManager;
+  private SCMSafeModeManager mockSafeModeManager;
 
   private void setup(int requiredDns) throws Exception {
     OzoneConfiguration ozoneConfiguration = new OzoneConfiguration();
@@ -67,20 +61,12 @@ private void setup(int requiredDns) throws Exception {
     ozoneConfiguration.setInt(
         HddsConfigKeys.HDDS_SCM_SAFEMODE_MIN_DATANODE, requiredDns);
 
-    List<ContainerInfo> containers =
-        new ArrayList<>(HddsTestUtils.getContainerInfo(1));
     nodeManager = mock(NodeManager.class);
-    ContainerManager containerManager = mock(ContainerManager.class);
-    when(containerManager.getContainers()).thenReturn(containers);
     eventQueue = new EventQueue();
-    serviceManager = new SCMServiceManager();
-    scmContext = SCMContext.emptyContext();
 
-    SCMSafeModeManager scmSafeModeManager = new 
SCMSafeModeManager(ozoneConfiguration,
-        nodeManager, null, containerManager, serviceManager, eventQueue, 
scmContext);
-    scmSafeModeManager.start();
+    mockSafeModeManager = mock(SCMSafeModeManager.class);
 
-    rule = 
SafeModeRuleFactory.getInstance().getSafeModeRule(DataNodeSafeModeRule.class);
+    rule = new DataNodeSafeModeRule(eventQueue, ozoneConfiguration, 
nodeManager, mockSafeModeManager);
     assertNotNull(rule);
 
     rule.setValidateBasedOnReportProcessing(true);
@@ -90,6 +76,7 @@ private void setup(int requiredDns) throws Exception {
   public void testDataNodeSafeModeRuleWithNoNodes() throws Exception {
     int requiredDns = 1;
     setup(requiredDns);
+    when(mockSafeModeManager.getInSafeMode()).thenReturn(true);
 
     GenericTestUtils.LogCapturer logCapturer =
         GenericTestUtils.LogCapturer.captureLogs(
@@ -113,6 +100,7 @@ public void testDataNodeSafeModeRuleWithNoNodes() throws 
Exception {
   public void testDataNodeSafeModeRuleWithMultipleNodes() throws Exception {
     int requiredDns = 3;
     setup(requiredDns);
+    when(mockSafeModeManager.getInSafeMode()).thenReturn(true);
 
     GenericTestUtils.LogCapturer logCapturer =
         GenericTestUtils.LogCapturer.captureLogs(
@@ -149,6 +137,7 @@ public void testDataNodeSafeModeRuleWithMultipleNodes() 
throws Exception {
   public void testDataNodeSafeModeRuleWithNodeManager() throws Exception {
     int requiredDns = 2;
     setup(requiredDns);
+    when(mockSafeModeManager.getInSafeMode()).thenReturn(true);
     
     rule.setValidateBasedOnReportProcessing(false);
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@ozone.apache.org
For additional commands, e-mail: commits-h...@ozone.apache.org

Reply via email to