Gimini-3 commented on code in PR #23128:
URL: https://github.com/apache/kafka/pull/23128#discussion_r4028097616


##########
metadata/src/test/java/org/apache/kafka/image/ScramImageTest.java:
##########
@@ -67,6 +71,27 @@ public void testImage2RoundTrip() {
         testToImage(IMAGE2);
     }
 
+    @Test
+    public void testMechanismMapsAreImmutableSnapshots() {
+        ScramCredentialData credential = new ScramCredentialData(
+            new byte[] {1}, new byte[] {2}, new byte[] {3}, 4096);
+        Map<String, ScramCredentialData> credentials = new HashMap<>();
+        credentials.put("alice", credential);
+        Map<ScramMechanism, Map<String, ScramCredentialData>> mechanisms = new 
HashMap<>();
+        mechanisms.put(ScramMechanism.SCRAM_SHA_256, credentials);
+
+        ScramImage image = new ScramImage(mechanisms);
+
+        mechanisms.clear();
+        credentials.clear();
+        assertEquals(
+            Map.of(ScramMechanism.SCRAM_SHA_256, Map.of("alice", credential)),
+            image.mechanisms());

Review Comment:
   Agreed. I removed the `credentials.clear()` assertion and renamed the test 
to `testMechanismMapsAreUnmodifiable`. It now verifies the copied outer map and 
that both map levels exposed by `mechanisms()` reject mutation. 
`:metadata:test` and `:metadata:spotlessCheck` pass.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to