dajac commented on a change in pull request #9374:
URL: https://github.com/apache/kafka/pull/9374#discussion_r511800360



##########
File path: 
clients/src/test/java/org/apache/kafka/clients/admin/KafkaAdminClientTest.java
##########
@@ -4505,50 +4505,57 @@ public void testDescribeUserScramCredentials() throws 
Exception {
             user0CredentialInfo1.setIterations(user0Iterations1);
 
             final String user1Name = "user1";
-            ScramMechanism user1ScramMechanism = ScramMechanism.SCRAM_SHA_256;
-            int user1Iterations = 4096;
+            final ScramMechanism user1ScramMechanism = 
ScramMechanism.SCRAM_SHA_256;
+            final int user1Iterations = 4096;
 
             final CredentialInfo user1CredentialInfo = new CredentialInfo();
             user1CredentialInfo.setMechanism(user1ScramMechanism.type());
             user1CredentialInfo.setIterations(user1Iterations);
 
-            DescribeUserScramCredentialsResponseData responseData = new 
DescribeUserScramCredentialsResponseData();
+            final DescribeUserScramCredentialsResponseData responseData = new 
DescribeUserScramCredentialsResponseData();
             responseData.setResults(Arrays.asList(
                     new 
DescribeUserScramCredentialsResponseData.DescribeUserScramCredentialsResult()
                             .setUser(user0Name)
                             
.setCredentialInfos(Arrays.asList(user0CredentialInfo0, user0CredentialInfo1)),
                     new 
DescribeUserScramCredentialsResponseData.DescribeUserScramCredentialsResult()
                             .setUser(user1Name)
-                            
.setCredentialInfos(Arrays.asList(user1CredentialInfo))));
-
-            env.kafkaClient().prepareResponse(new 
DescribeUserScramCredentialsResponse(responseData));
-
-            List<String> usersRequestedList = asList(user0Name, user1Name);
-            Set<String> usersRequestedSet = 
usersRequestedList.stream().collect(Collectors.toSet());
-            DescribeUserScramCredentialsResult result = 
env.adminClient().describeUserScramCredentials(usersRequestedList);
-            Map<String, UserScramCredentialsDescription> descriptionResults = 
result.all().get();
-            KafkaFuture<UserScramCredentialsDescription> 
user0DescriptionFuture = result.description(user0Name);
-            KafkaFuture<UserScramCredentialsDescription> 
user1DescriptionFuture = result.description(user1Name);
-            Set<String> usersDescribedFromUsersSet = 
result.users().get().stream().collect(Collectors.toSet());
-            assertEquals(usersRequestedSet, usersDescribedFromUsersSet);
-            Set<String> usersDescribedFromMapKeySet = 
descriptionResults.keySet();
-            assertEquals(usersRequestedSet, usersDescribedFromMapKeySet);
-
-            UserScramCredentialsDescription userScramCredentialsDescription0 = 
descriptionResults.get(user0Name);
-            assertEquals(user0Name, userScramCredentialsDescription0.name());
-            assertEquals(2, 
userScramCredentialsDescription0.credentialInfos().size());
-            assertEquals(user0ScramMechanism0, 
userScramCredentialsDescription0.credentialInfos().get(0).mechanism());
-            assertEquals(user0Iterations0, 
userScramCredentialsDescription0.credentialInfos().get(0).iterations());
-            assertEquals(user0ScramMechanism1, 
userScramCredentialsDescription0.credentialInfos().get(1).mechanism());
-            assertEquals(user0Iterations1, 
userScramCredentialsDescription0.credentialInfos().get(1).iterations());
-            assertEquals(userScramCredentialsDescription0, 
user0DescriptionFuture.get());
-
-            UserScramCredentialsDescription userScramCredentialsDescription1 = 
descriptionResults.get(user1Name);
-            assertEquals(user1Name, userScramCredentialsDescription1.name());
-            assertEquals(1, 
userScramCredentialsDescription1.credentialInfos().size());
-            assertEquals(user1ScramMechanism, 
userScramCredentialsDescription1.credentialInfos().get(0).mechanism());
-            assertEquals(user1Iterations, 
userScramCredentialsDescription1.credentialInfos().get(0).iterations());
-            assertEquals(userScramCredentialsDescription1, 
user1DescriptionFuture.get());
+                            
.setCredentialInfos(singletonList(user1CredentialInfo))));
+            final DescribeUserScramCredentialsResponse response = new 
DescribeUserScramCredentialsResponse(responseData);
+
+            final Set<String> usersRequestedSet = new HashSet<>();
+            usersRequestedSet.add(user0Name);
+            usersRequestedSet.add(user1Name);
+
+            for (final List<String> users : asList(null, new 
ArrayList<String>(), asList(user0Name, null, user1Name))) {

Review comment:
       Sorry, I was not clear. It would be great if we could define separate 
unit tests for the different cases that we want to test. In case of failure, we 
would know directly which one of the cases has failed. This is why I suggested 
to pass an argument `users` as an argument to 
`testDescribeUserScramCredentials`.




----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to