ImpersonationFacade implements Impersonation { @Override public PrincipalIterator getImpersonators() throws RepositoryException { return delegate.getImpersonators(); } @SuppressWarnings("WeakerAccess")  ImpersonationFacade(final @NotNull Impersonation delegate); @Override PrincipalIterator getImpersonators(); @Override boolean allows(final Subject subject); @Override boolean grantImpersonation(final Principal principal); @Override boolean revokeImpersonation(final Principal principal);  }
@Test public void testGetImpersonators() throws Exception { Impersonation delegate = mock(Impersonation.class); ImpersonationFacade facade = getFacade(delegate); final PrincipalIterator value = mock(PrincipalIterator.class); when(delegate.getImpersonators()).thenReturn(value); assertSame("is same value", value, facade.getImpersonators()); }