private void setupIDP(boolean useSignedAssertions, String authMode) throws Exception {
    setupIDP(useSignedAssertions, authMode, null, null);
  }
End to end tests for the SAML based SSO authentication. The test instantiates a SAML
2.0 compliant IDP provider (SimpleSAMLPHP) in a docker container. The container is
configured such that it's IDP service is run on a random port which is available. See
{@link #setupIDP(boolean, String)} for details.
<p>
The HS2 is configured with the IDP's metadata file which is derived from a template.
The metadata file contains the IDP's public certificate. The template should be
post-processed to replace the port number where the service is running.
<p>
The test uses TestContainers library for managing the life-cycle of the IDP container.
It uses HTMLUnit to simulate the browser interaction (provide user/password) of the
end user.
itests/hive-unit/src/test/java/org/apache/hive/service/auth/saml/TestHttpSamlAuthentication.java