@SuppressWarnings({"rawtypes", "unchecked"})
    public SchemaMetaData revise(final SchemaMetaData originalMetaData) {
        SchemaMetaData result = originalMetaData;
        for (Entry<ShardingSphereRule, MetaDataReviseEntry> entry : OrderedSPILoader.getServices(MetaDataReviseEntry.class, rules).entrySet()) {
            result = revise(result, entry.getKey(), entry.getValue());
        }
        return result;
    }
@Test
    void assertReviseWithoutMetaDataReviseEntry() {
        SchemaMetaData schemaMetaData = new SchemaMetaData("expected", Collections.singleton(mock(TableMetaData.class)));
        SchemaMetaData actual = new SchemaMetaDataReviseEngine(
                Collections.emptyList(), new ConfigurationProperties(new Properties()), mock(DatabaseType.class), mock(DataSource.class)).revise(schemaMetaData);
        assertThat(actual.getName(), is(schemaMetaData.getName()));
        assertThat(actual.getTables(), is(schemaMetaData.getTables()));
    }