@Parameterized.Parameters(name = "acceptSelfSignedCertificates={0},checkValidity={1},checkRevocation={2}")
    public static Iterable<Object[]> constructorArguments()
    {
        final List<Object[]> constructorArguments = new ArrayList<>();
        constructorArguments.add( new Object[] { false, true, false } );  // acceptSelfSignedCertificates = false, check validity = true
        constructorArguments.add( new Object[] { false, false, false } ); // acceptSelfSignedCertificates = false, check validity = false
        constructorArguments.add( new Object[] { true, true, false } );   // acceptSelfSignedCertificates = true, check validity = true
        constructorArguments.add( new Object[] { true, false, false } );  // acceptSelfSignedCertificates = true, check validity = false
        return constructorArguments;
    }
All tests in this class are executed repeatedly. A new instance of this class is created for each element in the
iterable returned here (its values are passed to the constructor of this class). This allows us to execute the
same set of tests against a different configuration of the system under test.
xmppserver/src/test/java/org/jivesoftware/openfire/keystore/CheckChainTrustedTest.java