@Parameterized.Parameters(name = "{index} - {0}")
    public static Iterable<Object[]> data() {
        return Arrays.asList(
            new Object[][] {
                { "jdbc:tc:mysql:8.0.36://hostname/test", "mysql", Optional.of("8.0.36"), "hostname/test", "test" },
                { "jdbc:tc:mysql://hostname/test", "mysql", Optional.empty(), "hostname/test", "test" },
                {
                    "jdbc:tc:postgresql:1.2.3://hostname/test",
                    "postgresql",
                    Optional.of("1.2.3"),
                    "hostname/test",
                    "test",
                },
                { "jdbc:tc:postgresql://hostname/test", "postgresql", Optional.empty(), "hostname/test", "test" },
                {
                    "jdbc:tc:sqlserver:1.2.3://localhost;instance=SQLEXPRESS:1433;databaseName=test",
                    "sqlserver",
                    Optional.of("1.2.3"),
                    "localhost;instance=SQLEXPRESS:1433;databaseName=test",
                    "test",
                },
                {
                    "jdbc:tc:sqlserver://localhost;instance=SQLEXPRESS:1433;databaseName=test",
                    "sqlserver",
                    Optional.empty(),
                    "localhost;instance=SQLEXPRESS:1433;databaseName=test",
                    "test",
                },
                {
                    "jdbc:tc:mariadb:1.2.3://localhost:3306/test",
                    "mariadb",
                    Optional.of("1.2.3"),
                    "localhost:3306/test",
                    "test",
                },
                { "jdbc:tc:mariadb://localhost:3306/test", "mariadb", Optional.empty(), "localhost:3306/test", "test" },
                {
                    "jdbc:tc:oracle:1.2.3:thin://@localhost:1521/test",
                    "oracle",
                    Optional.of("1.2.3"),
                    "localhost:1521/test",
                    "test",
                },
                {
                    "jdbc:tc:oracle:1.2.3:thin:@localhost:1521/test",
                    "oracle",
                    Optional.of("1.2.3"),
                    "localhost:1521/test",
                    "test",
                },
                {
                    "jdbc:tc:oracle:thin:@localhost:1521/test",
                    "oracle",
                    Optional.empty(),
                    "localhost:1521/test",
                    "test",
                },
                {
                    "jdbc:tc:oracle:1.2.3:thin:@localhost:1521:test",
                    "oracle",
                    Optional.of("1.2.3"),
                    "localhost:1521:test",
                    "test",
                },
                {
                    "jdbc:tc:oracle:1.2.3:thin://@localhost:1521:test",
                    "oracle",
                    Optional.of("1.2.3"),
                    "localhost:1521:test",
                    "test",
                },
                {
                    "jdbc:tc:oracle:1.2.3-anything:thin://@localhost:1521:test",
                    "oracle",
                    Optional.of("1.2.3-anything"),
                    "localhost:1521:test",
                    "test",
                },
                {
                    "jdbc:tc:oracle:thin:@localhost:1521:test",
                    "oracle",
                    Optional.empty(),
                    "localhost:1521:test",
                    "test",
                },
            }
        );
    }
This Test class validates that all supported JDBC URL's can be parsed by ConnectionUrl class.
modules/jdbc/src/test/java/org/testcontainers/jdbc/ConnectionUrlDriversTests.java