@Override
    public MaskRuleConfiguration buildToBeAlteredRuleConfiguration(final AlterMaskRuleStatement sqlStatement) {
        return MaskRuleStatementConverter.convert(sqlStatement.getRules());
    }
@Test
    void assertUpdate() {
        MaskRuleConfiguration currentRuleConfig = createCurrentRuleConfiguration();
        MaskColumnSegment columnSegment = new MaskColumnSegment("order_id",
                new AlgorithmSegment("MD5", new Properties()));
        MaskRuleSegment ruleSegment = new MaskRuleSegment("t_order", Collections.singleton(columnSegment));
        AlterMaskRuleStatement sqlStatement = new AlterMaskRuleStatement(Collections.singleton(ruleSegment));
        MaskRule rule = mock(MaskRule.class);
        when(rule.getConfiguration()).thenReturn(currentRuleConfig);
        executor.setRule(rule);
        MaskRuleConfiguration toBeAlteredRuleConfig = executor.buildToBeAlteredRuleConfiguration(sqlStatement);
        assertThat(toBeAlteredRuleConfig.getTables().size(), is(1));
        assertThat(toBeAlteredRuleConfig.getTables().iterator().next().getName(), is("t_order"));
        assertThat(toBeAlteredRuleConfig.getTables().iterator().next().getColumns().iterator().next().getLogicColumn(), is("order_id"));
        assertThat(toBeAlteredRuleConfig.getMaskAlgorithms().size(), is(1));
        assertTrue(toBeAlteredRuleConfig.getMaskAlgorithms().containsKey("t_order_order_id_md5"));
    }