popduke commented on code in PR #237:
URL: https://github.com/apache/bifromq/pull/237#discussion_r3007331343


##########
bifromq-plugin/bifromq-plugin-auth-provider-helper/src/test/java/org/apache/bifromq/plugin/authprovider/AuthProviderManagerTest.java:
##########
@@ -133,18 +136,52 @@ public void pluginSpecified() {
     }
 
     @Test
+    public void pluginNotSpecifiedWithSingleProvider() {
+        manager = new AuthProviderManager(null, pluginManager, 
settingProvider, eventCollector);
+        when(mockProvider.auth(mockAuth3Data)).thenReturn(
+            CompletableFuture.completedFuture(MQTT3AuthResult.newBuilder()
+                
.setReject(Reject.newBuilder().setCode(Reject.Code.BadPass).build()).build()));
+        MQTT3AuthResult result = manager.auth(mockAuth3Data).join();
+        assertEquals(result.getTypeCase(), MQTT3AuthResult.TypeCase.REJECT);
+        assertEquals(result.getReject().getCode(), Reject.Code.BadPass);
+        manager.close();
+    }
+
+    @Test
+    public void pluginNotSpecifiedWithMultipleProviders() {
+        IAuthProvider provider1 = new FirstTestAuthProvider();
+        IAuthProvider provider2 = new SecondTestAuthProvider();
+
+        when(pluginManager.getExtensions(IAuthProvider.class)).thenReturn(
+            Arrays.asList(provider1, provider2));
+        manager = new AuthProviderManager(null, pluginManager, 
settingProvider, eventCollector);
+
+        MQTT3AuthResult result = manager.auth(mockAuth3Data).join();
+        // Should use one of the providers (order depends on HashMap keySet 
iteration)

Review Comment:
   order should be deterministic



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