UserFacade extends AuthorizableFacade<User> implements User { @Override public String getDisabledReason() throws RepositoryException { return delegate.getDisabledReason(); } @SuppressWarnings("WeakerAccess")  UserFacade(final @NotNull User delegate); @Override boolean isAdmin(); @Override boolean isSystemUser(); @Override Credentials getCredentials(); @Override Impersonation getImpersonation(); @Override boolean isDisabled(); @Override String getDisabledReason(); @Override void disable(final String reason); @Override void changePassword(final String password); @Override void changePassword(final String password, final String oldPassword);  }
@Test public void testGetDisabledReason() throws Exception { User delegate = mock(User.class); UserFacade facade = getFacade(delegate); final String value = "reason"; when(delegate.getDisabledReason()).thenReturn(value); assertSame("same value", value, facade.getDisabledReason()); }