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

chia7712 pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/kafka.git


The following commit(s) were added to refs/heads/trunk by this push:
     new 19ac4ced889 KAFKA-20007 override exit procedure in 
AclCommandTest#testAclCliWithMisusingBootstrapControllerToServer (#21173)
19ac4ced889 is described below

commit 19ac4ced889cb2e337ae1167c2624376da69e3d5
Author: Gaurav Narula <[email protected]>
AuthorDate: Fri Dec 19 15:29:03 2025 +0000

    KAFKA-20007 override exit procedure in 
AclCommandTest#testAclCliWithMisusingBootstrapControllerToServer (#21173)
    
    `AclCommandTest#testAclCliWithMisusingBootstrapControllerToServer`
    crashes the Gradle executor as the command exits with a status code 1.
    
    This fix updates the exit procedure prior to invoking the command.
    
    Reviewers: Chia-Ping Tsai <[email protected]>
---
 .../org/apache/kafka/tools/AclCommandTest.java     | 48 +++++++++++-----------
 1 file changed, 24 insertions(+), 24 deletions(-)

diff --git a/tools/src/test/java/org/apache/kafka/tools/AclCommandTest.java 
b/tools/src/test/java/org/apache/kafka/tools/AclCommandTest.java
index 71572d6c33a..8f6532fa72f 100644
--- a/tools/src/test/java/org/apache/kafka/tools/AclCommandTest.java
+++ b/tools/src/test/java/org/apache/kafka/tools/AclCommandTest.java
@@ -445,7 +445,17 @@ public class AclCommandTest {
     }
 
     private Map.Entry<String, String> callMain(List<String> args) {
-        return ToolsTestUtils.grabConsoleOutputAndError(() -> 
AclCommand.main(args.toArray(new String[0])));
+        Exit.setExitProcedure((status, message) -> {
+            if (status == 1)
+                throw new RuntimeException("Exiting command");
+            else
+                throw new AssertionError("Unexpected exit with status " + 
status);
+        });
+        try {
+            return ToolsTestUtils.grabConsoleOutputAndError(() -> 
AclCommand.main(args.toArray(new String[0])));
+        } finally {
+            Exit.resetExitProcedure();
+        }
     }
 
     private void testAclCli(ClusterInstance cluster, List<String> cmdArgs) 
throws InterruptedException {
@@ -507,29 +517,19 @@ public class AclCommandTest {
     }
 
     private void testPatternTypes(List<String> cmdArgs) {
-        Exit.setExitProcedure((status, message) -> {
-            if (status == 1)
-                throw new RuntimeException("Exiting command");
-            else
-                throw new AssertionError("Unexpected exit with status " + 
status);
-        });
-        try {
-            for (PatternType patternType : PatternType.values()) {
-                List<String> addCmd = new ArrayList<>(cmdArgs);
-                addCmd.addAll(List.of("--allow-principal", 
PRINCIPAL.toString(), PRODUCER, TOPIC, "Test",
-                        ADD, RESOURCE_PATTERN_TYPE, patternType.toString()));
-                verifyPatternType(addCmd, patternType.isSpecific());
-
-                List<String> listCmd = new ArrayList<>(cmdArgs);
-                listCmd.addAll(List.of(TOPIC, "Test", LIST, 
RESOURCE_PATTERN_TYPE, patternType.toString()));
-                verifyPatternType(listCmd, patternType != PatternType.UNKNOWN);
-
-                List<String> removeCmd = new ArrayList<>(cmdArgs);
-                removeCmd.addAll(List.of(TOPIC, "Test", "--force", REMOVE, 
RESOURCE_PATTERN_TYPE, patternType.toString()));
-                verifyPatternType(removeCmd, patternType != 
PatternType.UNKNOWN);
-            }
-        } finally {
-            Exit.resetExitProcedure();
+        for (PatternType patternType : PatternType.values()) {
+            List<String> addCmd = new ArrayList<>(cmdArgs);
+            addCmd.addAll(List.of("--allow-principal", PRINCIPAL.toString(), 
PRODUCER, TOPIC, "Test",
+                    ADD, RESOURCE_PATTERN_TYPE, patternType.toString()));
+            verifyPatternType(addCmd, patternType.isSpecific());
+
+            List<String> listCmd = new ArrayList<>(cmdArgs);
+            listCmd.addAll(List.of(TOPIC, "Test", LIST, RESOURCE_PATTERN_TYPE, 
patternType.toString()));
+            verifyPatternType(listCmd, patternType != PatternType.UNKNOWN);
+
+            List<String> removeCmd = new ArrayList<>(cmdArgs);
+            removeCmd.addAll(List.of(TOPIC, "Test", "--force", REMOVE, 
RESOURCE_PATTERN_TYPE, patternType.toString()));
+            verifyPatternType(removeCmd, patternType != PatternType.UNKNOWN);
         }
     }
 

Reply via email to