### Question:
DecoratedPasswordAuthenticator implements IDecoratedAuthenticator { @Override public boolean requireAuthentication() { return wrappedAuthenticator.requireAuthentication(); } DecoratedPasswordAuthenticator(); @VisibleForTesting  DecoratedPasswordAuthenticator(PasswordAuthenticator authenticator); @Override boolean requireAuthentication(); @Override Set<? extends IResource> protectedResources(); @Override void validateConfiguration(); @Override void setup(); @Override Set<IRoleManager.Option> supportedOptions(); @Override Set<IRoleManager.Option> alterableOptions(); @Override SaslNegotiator newSaslNegotiator(); @Override DecoratedSaslNegotiator newDecoratedSaslNegotiator(); @Override AuthenticatedUser legacyAuthenticate(Map<String, String> credentials);  }### Answer:
@Test public void testRequireAuthDelegation() { when(mockPasswordAuthenticator.requireAuthentication()).thenReturn(true); assertThat(authenticator.requireAuthentication()).isEqualTo(true); verify(mockPasswordAuthenticator, times(1)).requireAuthentication(); }