public Properties translate(Properties source) {
        Properties hikariProperties = new Properties();

        // Iterate over source Properties and translate from HZ to Hikari
        source.forEach((key, value) -> {
            String keyString = (String) key;
            if (PROPERTY_MAP.containsKey(keyString)) {
                hikariProperties.put(keyString, value);
            } else if (keyString.startsWith(HIKARI_PREFIX)) {
                String keyNoPrefix = keyString.substring(HIKARI_PREFIX.length());
                hikariProperties.put(keyNoPrefix, source.get(keyString));
            } else {
                hikariProperties.put("dataSource." + keyString, value);
            }
        });

        int cnt = poolCounter.getAndIncrement();
        hikariProperties.put("poolName", "HikariPool-" + cnt + "-" + name);

        return hikariProperties;
    }
@Test
    public void testPoolNameProperty() {
        Properties hzProperties = new Properties();

        Properties hikariProperties = hikariTranslator.translate(hzProperties);
        HikariConfig hikariConfig = new HikariConfig(hikariProperties);

        String poolName = hikariConfig.getPoolName();
        assertThat(poolName).isEqualTo("HikariPool-0-foo");
    }