@Override
    public List<String> listTableNames(String dbName) {
        ConnectorMetadata metadata = metadataOfDb(dbName);
        return metadata.listTableNames(dbName);
    }
@Test
    void testListTableNames(@Mocked ConnectorMetadata connectorMetadata) {
        new Expectations() {
            {
                connectorMetadata.listTableNames("test_db");
                result = ImmutableList.of("test_tbl1", "test_tbl2");
                times = 1;
            }
        };

        CatalogConnectorMetadata catalogConnectorMetadata = new CatalogConnectorMetadata(
                connectorMetadata,
                informationSchemaMetadata,
                metaMetadata
        );

        List<String> tblNames = catalogConnectorMetadata.listTableNames(InfoSchemaDb.DATABASE_NAME);
        List<String> expected = ImmutableList.of("tables", "table_privileges", "referential_constraints",
                "key_column_usage", "routines", "schemata", "columns", "character_sets", "collations",
                "table_constraints", "engines", "user_privileges", "schema_privileges", "statistics",
                "triggers", "events", "views", "partitions", "column_privileges"
        );
        assertEquals(expected, tblNames);

        tblNames = catalogConnectorMetadata.listTableNames("test_db");
        expected = ImmutableList.of("test_tbl1", "test_tbl2");
        assertEquals(expected, tblNames);
    }