@Override
    public ConnectorMetadata getMetadata() {
        return metadataFactory.create();
    }
@Test
    public void testCreateHiveConnectorWithMetaStoreType(@Mocked HiveConnectorInternalMgr internalMgr) {
        FeConstants.runningUnitTest = true;
        Map<String, String> properties = ImmutableMap.of("hive.metastore.uris", "thrift://127.0.0.1:9083",
                "type", "hive", "hive.metastore.type", "hive");
        new Expectations() {
            {
                internalMgr.createHiveMetastore();
                result = cachingHiveMetastore;

                internalMgr.createRemoteFileIO();
                result = cachingRemoteFileIO;

                internalMgr.getHiveMetastoreConf();
                result = new CachingHiveMetastoreConf(properties, "hive");

                internalMgr.getRemoteFileConf();
                result = new CachingRemoteFileConf(properties);

                internalMgr.getPullRemoteFileExecutor();
                result = executorForPullFiles;

                internalMgr.isSearchRecursive();
                result = false;
            }
        };

        HiveConnector hiveConnector = new HiveConnector(new ConnectorContext("hive_catalog", "hive", properties));
        ConnectorMetadata metadata = hiveConnector.getMetadata();
        Assert.assertTrue(metadata instanceof HiveMetadata);
    }