### Question:
JdbcMetadata implements ConnectorMetadata { @Override public List<String> listSchemaNames(ConnectorSession session) { return ImmutableList.copyOf(jdbcClient.getSchemaNames(JdbcIdentity.from(session))); } JdbcMetadata(JdbcClient jdbcClient, boolean allowDropTable); @Override boolean schemaExists(ConnectorSession session, String schemaName); @Override List<String> listSchemaNames(ConnectorSession session); @Override JdbcTableHandle getTableHandle(ConnectorSession session, SchemaTableName tableName); @Override Optional<SystemTable> getSystemTable(ConnectorSession session, SchemaTableName tableName); @Override Optional<ConstraintApplicationResult<ConnectorTableHandle>> applyFilter(ConnectorSession session, ConnectorTableHandle table, Constraint constraint); @Override Optional<ProjectionApplicationResult<ConnectorTableHandle>> applyProjection(
            ConnectorSession session,
            ConnectorTableHandle table,
            List<ConnectorExpression> projections,
            Map<String, ColumnHandle> assignments); @Override Optional<AggregationApplicationResult<ConnectorTableHandle>> applyAggregation(
            ConnectorSession session,
            ConnectorTableHandle table,
            List<AggregateFunction> aggregates,
            Map<String, ColumnHandle> assignments,
            List<List<ColumnHandle>> groupingSets); @Override Optional<LimitApplicationResult<ConnectorTableHandle>> applyLimit(ConnectorSession session, ConnectorTableHandle table, long limit); @Override boolean usesLegacyTableLayouts(); @Override ConnectorTableProperties getTableProperties(ConnectorSession session, ConnectorTableHandle table); @Override ConnectorTableMetadata getTableMetadata(ConnectorSession session, ConnectorTableHandle table); @Override List<SchemaTableName> listTables(ConnectorSession session, Optional<String> schemaName); @Override Map<String, ColumnHandle> getColumnHandles(ConnectorSession session, ConnectorTableHandle tableHandle); @Override Map<SchemaTableName, List<ColumnMetadata>> listTableColumns(ConnectorSession session, SchemaTablePrefix prefix); @Override ColumnMetadata getColumnMetadata(ConnectorSession session, ConnectorTableHandle tableHandle, ColumnHandle columnHandle); @Override void dropTable(ConnectorSession session, ConnectorTableHandle tableHandle); @Override ConnectorOutputTableHandle beginCreateTable(ConnectorSession session, ConnectorTableMetadata tableMetadata, Optional<ConnectorNewTableLayout> layout); @Override void createTable(ConnectorSession session, ConnectorTableMetadata tableMetadata, boolean ignoreExisting); @Override Optional<ConnectorOutputMetadata> finishCreateTable(ConnectorSession session, ConnectorOutputTableHandle tableHandle, Collection<Slice> fragments, Collection<ComputedStatistics> computedStatistics); void rollback(); @Override ConnectorInsertTableHandle beginInsert(ConnectorSession session, ConnectorTableHandle tableHandle, List<ColumnHandle> columns); @Override boolean supportsMissingColumnsOnInsert(); @Override Optional<ConnectorOutputMetadata> finishInsert(ConnectorSession session, ConnectorInsertTableHandle tableHandle, Collection<Slice> fragments, Collection<ComputedStatistics> computedStatistics); @Override void setColumnComment(ConnectorSession session, ConnectorTableHandle table, ColumnHandle column, Optional<String> comment); @Override void addColumn(ConnectorSession session, ConnectorTableHandle table, ColumnMetadata columnMetadata); @Override void dropColumn(ConnectorSession session, ConnectorTableHandle table, ColumnHandle column); @Override void renameColumn(ConnectorSession session, ConnectorTableHandle table, ColumnHandle column, String target); @Override void renameTable(ConnectorSession session, ConnectorTableHandle table, SchemaTableName newTableName); @Override TableStatistics getTableStatistics(ConnectorSession session, ConnectorTableHandle tableHandle, Constraint constraint); @Override void createSchema(ConnectorSession session, String schemaName, Map<String, Object> properties, PrestoPrincipal owner); @Override void dropSchema(ConnectorSession session, String schemaName);  }### Answer:
@Test public void testListSchemaNames() { assertTrue(metadata.listSchemaNames(SESSION).containsAll(ImmutableSet.of("example", "tpch"))); }