You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by zh...@apache.org on 2023/03/26 12:34:05 UTC

[shardingsphere] branch master updated: Refactor EncryptGeneratorFixtureBuilder (#24839)

This is an automated email from the ASF dual-hosted git repository.

zhaojinchao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 4de28aaa41c Refactor EncryptGeneratorFixtureBuilder (#24839)
4de28aaa41c is described below

commit 4de28aaa41ca9c7a83a89de73fb8c7c5ca4dd8e6
Author: Liang Zhang <zh...@apache.org>
AuthorDate: Sun Mar 26 20:33:57 2023 +0800

    Refactor EncryptGeneratorFixtureBuilder (#24839)
    
    * Refactor ColumnValueMatchShadowAlgorithmTest
    
    * Refactor EncryptGeneratorBaseTest
    
    * Refactor EncryptGeneratorFixtureBuilder
    
    * Fix checkstyle
---
 ...rUseDefaultInsertColumnsTokenGeneratorTest.java | 30 ++++++------
 ...st.java => EncryptGeneratorFixtureBuilder.java} | 53 ++++++++++------------
 .../EncryptInsertValuesTokenGeneratorTest.java     | 32 +++++++------
 .../EncryptPredicateColumnTokenGeneratorTest.java  | 26 ++++++-----
 ...cryptPredicateRightValueTokenGeneratorTest.java | 32 +++++++------
 .../InsertCipherNameTokenGeneratorTest.java        |  8 ++--
 6 files changed, 94 insertions(+), 87 deletions(-)

diff --git a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptForUseDefaultInsertColumnsTokenGeneratorTest.java b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptForUseDefaultInsertColumnsTokenGeneratorTest.java
index a76c13721d2..7228e0ddfe9 100644
--- a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptForUseDefaultInsertColumnsTokenGeneratorTest.java
+++ b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptForUseDefaultInsertColumnsTokenGeneratorTest.java
@@ -17,36 +17,40 @@
 
 package org.apache.shardingsphere.encrypt.rewrite.token.generator;
 
+import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
 import java.util.Collections;
 
 import static org.hamcrest.CoreMatchers.is;
-import static org.junit.jupiter.api.Assertions.assertFalse;
 import static org.hamcrest.MatcherAssert.assertThat;
+import static org.junit.jupiter.api.Assertions.assertFalse;
 
-class EncryptForUseDefaultInsertColumnsTokenGeneratorTest extends EncryptGeneratorBaseTest {
+class EncryptForUseDefaultInsertColumnsTokenGeneratorTest {
+    
+    private final EncryptForUseDefaultInsertColumnsTokenGenerator generator = new EncryptForUseDefaultInsertColumnsTokenGenerator();
+    
+    @BeforeEach
+    void setup() {
+        generator.setEncryptRule(EncryptGeneratorFixtureBuilder.createEncryptRule());
+    }
     
     @Test
     void assertIsGenerateSQLToken() {
-        EncryptForUseDefaultInsertColumnsTokenGenerator tokenGenerator = new EncryptForUseDefaultInsertColumnsTokenGenerator();
-        tokenGenerator.setEncryptRule(createEncryptRule());
-        assertFalse(tokenGenerator.isGenerateSQLToken(createInsertStatementContext(Collections.emptyList())));
+        assertFalse(generator.isGenerateSQLToken(EncryptGeneratorFixtureBuilder.createInsertStatementContext(Collections.emptyList())));
     }
     
     @Test
     void assertGenerateSQLTokenFromGenerateNewSQLToken() {
-        EncryptForUseDefaultInsertColumnsTokenGenerator tokenGenerator = new EncryptForUseDefaultInsertColumnsTokenGenerator();
-        tokenGenerator.setEncryptRule(createEncryptRule());
-        tokenGenerator.setPreviousSQLTokens(Collections.emptyList());
-        assertThat(tokenGenerator.generateSQLToken(createInsertStatementContext(Collections.emptyList())).toString(), is("(id, name, status, pwd_cipher, pwd_assist, pwd_like, pwd_plain)"));
+        generator.setPreviousSQLTokens(Collections.emptyList());
+        assertThat(generator.generateSQLToken(EncryptGeneratorFixtureBuilder.createInsertStatementContext(Collections.emptyList())).toString(),
+                is("(id, name, status, pwd_cipher, pwd_assist, pwd_like, pwd_plain)"));
     }
     
     @Test
     void assertGenerateSQLTokenFromPreviousSQLTokens() {
-        EncryptForUseDefaultInsertColumnsTokenGenerator tokenGenerator = new EncryptForUseDefaultInsertColumnsTokenGenerator();
-        tokenGenerator.setEncryptRule(createEncryptRule());
-        tokenGenerator.setPreviousSQLTokens(getPreviousSQLTokens());
-        assertThat(tokenGenerator.generateSQLToken(createInsertStatementContext(Collections.emptyList())).toString(), is("(id, name, status, pwd_cipher, pwd_assist, pwd_like, pwd_plain)"));
+        generator.setPreviousSQLTokens(EncryptGeneratorFixtureBuilder.getPreviousSQLTokens());
+        assertThat(generator.generateSQLToken(EncryptGeneratorFixtureBuilder.createInsertStatementContext(Collections.emptyList())).toString(),
+                is("(id, name, status, pwd_cipher, pwd_assist, pwd_like, pwd_plain)"));
     }
 }
diff --git a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptGeneratorBaseTest.java b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptGeneratorFixtureBuilder.java
similarity index 80%
rename from features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptGeneratorBaseTest.java
rename to features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptGeneratorFixtureBuilder.java
index 8a08a5f54ad..a565b538691 100644
--- a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptGeneratorBaseTest.java
+++ b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptGeneratorFixtureBuilder.java
@@ -17,6 +17,8 @@
 
 package org.apache.shardingsphere.encrypt.rewrite.token.generator;
 
+import lombok.AccessLevel;
+import lombok.NoArgsConstructor;
 import org.apache.shardingsphere.encrypt.api.config.EncryptRuleConfiguration;
 import org.apache.shardingsphere.encrypt.api.config.rule.EncryptColumnRuleConfiguration;
 import org.apache.shardingsphere.encrypt.api.config.rule.EncryptTableRuleConfiguration;
@@ -62,35 +64,32 @@ import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
-public abstract class EncryptGeneratorBaseTest {
+@NoArgsConstructor(access = AccessLevel.PRIVATE)
+class EncryptGeneratorFixtureBuilder {
     
-    private static final String TABLE_NAME = "t_user";
-    
-    protected static EncryptRule createEncryptRule() {
+    static EncryptRule createEncryptRule() {
         EncryptColumnRuleConfiguration pwdColumnConfig =
                 new EncryptColumnRuleConfiguration("pwd", "pwd_cipher", "pwd_assist", "pwd_like", "pwd_plain", "test_encryptor", "test_encryptor", "like_encryptor", false);
-        Map<String, AlgorithmConfiguration> encryptors = new LinkedHashMap<>();
+        Map<String, AlgorithmConfiguration> encryptors = new LinkedHashMap<>(2, 1);
         encryptors.put("test_encryptor", new AlgorithmConfiguration("CORE.QUERY_ASSISTED.FIXTURE", new Properties()));
         encryptors.put("like_encryptor", new AlgorithmConfiguration("CORE.QUERY_LIKE.FIXTURE", new Properties()));
-        return new EncryptRule(new EncryptRuleConfiguration(Collections.singleton(new EncryptTableRuleConfiguration(TABLE_NAME, Collections.singletonList(pwdColumnConfig), null)), encryptors));
+        return new EncryptRule(new EncryptRuleConfiguration(Collections.singleton(new EncryptTableRuleConfiguration("t_user", Collections.singletonList(pwdColumnConfig), null)), encryptors));
     }
     
-    protected InsertStatementContext createInsertStatementContext(final List<Object> params) {
+    static InsertStatementContext createInsertStatementContext(final List<Object> params) {
         InsertStatement insertStatement = createInsertStatement();
         ShardingSphereDatabase database = mock(ShardingSphereDatabase.class, RETURNS_DEEP_STUBS);
         ShardingSphereSchema schema = mock(ShardingSphereSchema.class);
         when(database.getSchema(DefaultDatabase.LOGIC_NAME)).thenReturn(schema);
         when(schema.getAllColumnNames("tbl")).thenReturn(Arrays.asList("id", "name", "status", "pwd"));
-        return new InsertStatementContext(createShardingSphereMetaData(database), params, insertStatement, DefaultDatabase.LOGIC_NAME);
-    }
-    
-    private ShardingSphereMetaData createShardingSphereMetaData(final ShardingSphereDatabase database) {
-        return new ShardingSphereMetaData(Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), mock(ShardingSphereRuleMetaData.class), mock(ConfigurationProperties.class));
+        ShardingSphereMetaData metaData = new ShardingSphereMetaData(
+                Collections.singletonMap(DefaultDatabase.LOGIC_NAME, database), mock(ShardingSphereRuleMetaData.class), mock(ConfigurationProperties.class));
+        return new InsertStatementContext(metaData, params, insertStatement, DefaultDatabase.LOGIC_NAME);
     }
     
-    protected static InsertStatement createInsertStatement() {
+    private static InsertStatement createInsertStatement() {
         InsertStatement result = new MySQLInsertStatement();
-        result.setTable(createTableSegment(TABLE_NAME));
+        result.setTable(new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue("t_user"))));
         InsertColumnsSegment insertColumnsSegment = new InsertColumnsSegment(0, 0, Arrays.asList(
                 new ColumnSegment(0, 0, new IdentifierValue("id")), new ColumnSegment(0, 0, new IdentifierValue("name")),
                 new ColumnSegment(0, 0, new IdentifierValue("status")), new ColumnSegment(0, 0, new IdentifierValue("pwd"))));
@@ -99,12 +98,12 @@ public abstract class EncryptGeneratorBaseTest {
         return result;
     }
     
-    protected static UpdateStatementContext createUpdatesStatementContext() {
-        MySQLUpdateStatement mySQLUpdateStatement = new MySQLUpdateStatement();
-        mySQLUpdateStatement.setTable(createTableSegment(TABLE_NAME));
-        mySQLUpdateStatement.setWhere(createWhereSegment());
-        mySQLUpdateStatement.setSetAssignment(createSetAssignmentSegment());
-        return new UpdateStatementContext(mySQLUpdateStatement);
+    static UpdateStatementContext createUpdatesStatementContext() {
+        MySQLUpdateStatement updateStatement = new MySQLUpdateStatement();
+        updateStatement.setTable(new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue("t_user"))));
+        updateStatement.setWhere(createWhereSegment());
+        updateStatement.setSetAssignment(createSetAssignmentSegment());
+        return new UpdateStatementContext(updateStatement);
     }
     
     private static WhereSegment createWhereSegment() {
@@ -120,8 +119,10 @@ public abstract class EncryptGeneratorBaseTest {
         return new SetAssignmentSegment(0, 0, Collections.singletonList(new ColumnAssignmentSegment(0, 0, columnSegment, new LiteralExpressionSegment(0, 0, "654321"))));
     }
     
-    private static SimpleTableSegment createTableSegment(final String tableName) {
-        return new SimpleTableSegment(new TableNameSegment(0, 0, new IdentifierValue(tableName)));
+    static List<SQLToken> getPreviousSQLTokens() {
+        EncryptInsertValuesToken encryptInsertValuesToken = new EncryptInsertValuesToken(0, 0);
+        encryptInsertValuesToken.getInsertValues().add(new InsertValue(createValueExpressions()));
+        return Collections.singletonList(encryptInsertValuesToken);
     }
     
     private static List<ExpressionSegment> createValueExpressions() {
@@ -132,12 +133,4 @@ public abstract class EncryptGeneratorBaseTest {
         result.add(new ParameterMarkerExpressionSegment(0, 0, 4));
         return result;
     }
-    
-    protected static List<SQLToken> getPreviousSQLTokens() {
-        List<SQLToken> result = new ArrayList<>(1);
-        EncryptInsertValuesToken encryptInsertValuesToken = new EncryptInsertValuesToken(0, 0);
-        encryptInsertValuesToken.getInsertValues().add(new InsertValue(createValueExpressions()));
-        result.add(encryptInsertValuesToken);
-        return result;
-    }
 }
diff --git a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptInsertValuesTokenGeneratorTest.java b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptInsertValuesTokenGeneratorTest.java
index dd41026473b..d1d3a56e488 100644
--- a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptInsertValuesTokenGeneratorTest.java
+++ b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptInsertValuesTokenGeneratorTest.java
@@ -17,6 +17,7 @@
 
 package org.apache.shardingsphere.encrypt.rewrite.token.generator;
 
+import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
 import java.util.Arrays;
@@ -26,31 +27,32 @@ import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
-class EncryptInsertValuesTokenGeneratorTest extends EncryptGeneratorBaseTest {
+class EncryptInsertValuesTokenGeneratorTest {
+    
+    private final EncryptInsertValuesTokenGenerator generator = new EncryptInsertValuesTokenGenerator();
+    
+    @BeforeEach
+    void setup() {
+        generator.setEncryptRule(EncryptGeneratorFixtureBuilder.createEncryptRule());
+    }
     
     @Test
     void assertIsGenerateSQLToken() {
-        EncryptInsertValuesTokenGenerator encryptInsertValuesTokenGenerator = new EncryptInsertValuesTokenGenerator();
-        encryptInsertValuesTokenGenerator.setEncryptRule(createEncryptRule());
-        assertTrue(encryptInsertValuesTokenGenerator.isGenerateSQLToken(createInsertStatementContext(Collections.emptyList())));
+        assertTrue(generator.isGenerateSQLToken(EncryptGeneratorFixtureBuilder.createInsertStatementContext(Collections.emptyList())));
     }
     
     @Test
     void assertGenerateSQLTokenFromGenerateNewSQLToken() {
-        EncryptInsertValuesTokenGenerator encryptInsertValuesTokenGenerator = new EncryptInsertValuesTokenGenerator();
-        encryptInsertValuesTokenGenerator.setEncryptRule(createEncryptRule());
-        encryptInsertValuesTokenGenerator.setPreviousSQLTokens(Collections.emptyList());
-        encryptInsertValuesTokenGenerator.setDatabaseName("db_schema");
-        assertThat(encryptInsertValuesTokenGenerator.generateSQLToken(createInsertStatementContext(Arrays.asList(1, "Tom", 0, "123456"))).toString(), is("(?, ?, ?, ?, ?, ?, ?)"));
+        generator.setPreviousSQLTokens(Collections.emptyList());
+        generator.setDatabaseName("db_schema");
+        assertThat(generator.generateSQLToken(EncryptGeneratorFixtureBuilder.createInsertStatementContext(Arrays.asList(1, "Tom", 0, "123456"))).toString(), is("(?, ?, ?, ?, ?, ?, ?)"));
     }
     
     @Test
     void assertGenerateSQLTokenFromPreviousSQLTokens() {
-        EncryptInsertValuesTokenGenerator encryptInsertValuesTokenGenerator = new EncryptInsertValuesTokenGenerator();
-        encryptInsertValuesTokenGenerator.setDatabaseName("db-001");
-        encryptInsertValuesTokenGenerator.setEncryptRule(createEncryptRule());
-        encryptInsertValuesTokenGenerator.setPreviousSQLTokens(getPreviousSQLTokens());
-        encryptInsertValuesTokenGenerator.setDatabaseName("db_schema");
-        assertThat(encryptInsertValuesTokenGenerator.generateSQLToken(createInsertStatementContext(Arrays.asList(1, "Tom", 0, "123456"))).toString(), is("(?, ?, ?, ?, ?, ?, ?)"));
+        generator.setDatabaseName("db-001");
+        generator.setPreviousSQLTokens(EncryptGeneratorFixtureBuilder.getPreviousSQLTokens());
+        generator.setDatabaseName("db_schema");
+        assertThat(generator.generateSQLToken(EncryptGeneratorFixtureBuilder.createInsertStatementContext(Arrays.asList(1, "Tom", 0, "123456"))).toString(), is("(?, ?, ?, ?, ?, ?, ?)"));
     }
 }
diff --git a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptPredicateColumnTokenGeneratorTest.java b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptPredicateColumnTokenGeneratorTest.java
index d8e67692492..d09ac916a04 100644
--- a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptPredicateColumnTokenGeneratorTest.java
+++ b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptPredicateColumnTokenGeneratorTest.java
@@ -19,6 +19,7 @@ package org.apache.shardingsphere.encrypt.rewrite.token.generator;
 
 import org.apache.shardingsphere.infra.database.DefaultDatabase;
 import org.apache.shardingsphere.infra.rewrite.sql.token.pojo.generic.SubstitutableColumnNameToken;
+import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
 import java.util.Collection;
@@ -28,24 +29,27 @@ import static org.hamcrest.CoreMatchers.is;
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
-class EncryptPredicateColumnTokenGeneratorTest extends EncryptGeneratorBaseTest {
+class EncryptPredicateColumnTokenGeneratorTest {
+    
+    private final EncryptPredicateColumnTokenGenerator generator = new EncryptPredicateColumnTokenGenerator();
+    
+    @BeforeEach
+    void setup() {
+        generator.setEncryptRule(EncryptGeneratorFixtureBuilder.createEncryptRule());
+    }
     
     @Test
     void assertIsGenerateSQLToken() {
-        EncryptPredicateColumnTokenGenerator tokenGenerator = new EncryptPredicateColumnTokenGenerator();
-        tokenGenerator.setDatabaseName(DefaultDatabase.LOGIC_NAME);
-        tokenGenerator.setEncryptRule(createEncryptRule());
-        tokenGenerator.setSchemas(Collections.emptyMap());
-        assertTrue(tokenGenerator.isGenerateSQLToken(createUpdatesStatementContext()));
+        generator.setDatabaseName(DefaultDatabase.LOGIC_NAME);
+        generator.setSchemas(Collections.emptyMap());
+        assertTrue(generator.isGenerateSQLToken(EncryptGeneratorFixtureBuilder.createUpdatesStatementContext()));
     }
     
     @Test
     void assertGenerateSQLTokenFromGenerateNewSQLToken() {
-        EncryptPredicateColumnTokenGenerator tokenGenerator = new EncryptPredicateColumnTokenGenerator();
-        tokenGenerator.setDatabaseName(DefaultDatabase.LOGIC_NAME);
-        tokenGenerator.setEncryptRule(createEncryptRule());
-        tokenGenerator.setSchemas(Collections.emptyMap());
-        Collection<SubstitutableColumnNameToken> substitutableColumnNameTokens = tokenGenerator.generateSQLTokens(createUpdatesStatementContext());
+        generator.setDatabaseName(DefaultDatabase.LOGIC_NAME);
+        generator.setSchemas(Collections.emptyMap());
+        Collection<SubstitutableColumnNameToken> substitutableColumnNameTokens = generator.generateSQLTokens(EncryptGeneratorFixtureBuilder.createUpdatesStatementContext());
         assertThat(substitutableColumnNameTokens.size(), is(1));
         assertThat(substitutableColumnNameTokens.iterator().next().toString(null), is("pwd_plain"));
     }
diff --git a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptPredicateRightValueTokenGeneratorTest.java b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptPredicateRightValueTokenGeneratorTest.java
index bebebfe42fc..2434e62fe36 100644
--- a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptPredicateRightValueTokenGeneratorTest.java
+++ b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/EncryptPredicateRightValueTokenGeneratorTest.java
@@ -23,6 +23,7 @@ import org.apache.shardingsphere.infra.binder.statement.dml.UpdateStatementConte
 import org.apache.shardingsphere.infra.database.DefaultDatabase;
 import org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereSchema;
 import org.apache.shardingsphere.infra.rewrite.sql.token.pojo.SQLToken;
+import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 
 import java.util.Collection;
@@ -33,30 +34,33 @@ import static org.hamcrest.MatcherAssert.assertThat;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 import static org.mockito.Mockito.mock;
 
-class EncryptPredicateRightValueTokenGeneratorTest extends EncryptGeneratorBaseTest {
+class EncryptPredicateRightValueTokenGeneratorTest {
+    
+    private final EncryptPredicateRightValueTokenGenerator generator = new EncryptPredicateRightValueTokenGenerator();
+    
+    @BeforeEach
+    void setup() {
+        generator.setEncryptRule(EncryptGeneratorFixtureBuilder.createEncryptRule());
+    }
     
     @Test
     void assertIsGenerateSQLToken() {
-        EncryptPredicateRightValueTokenGenerator tokenGenerator = new EncryptPredicateRightValueTokenGenerator();
-        tokenGenerator.setDatabaseName(DefaultDatabase.LOGIC_NAME);
-        tokenGenerator.setEncryptRule(createEncryptRule());
-        assertTrue(tokenGenerator.isGenerateSQLToken(createUpdatesStatementContext()));
+        generator.setDatabaseName(DefaultDatabase.LOGIC_NAME);
+        assertTrue(generator.isGenerateSQLToken(EncryptGeneratorFixtureBuilder.createUpdatesStatementContext()));
     }
     
     @Test
     void assertGenerateSQLTokenFromGenerateNewSQLToken() {
-        UpdateStatementContext updatesStatementContext = createUpdatesStatementContext();
-        EncryptPredicateRightValueTokenGenerator tokenGenerator = new EncryptPredicateRightValueTokenGenerator();
-        tokenGenerator.setDatabaseName(DefaultDatabase.LOGIC_NAME);
-        tokenGenerator.setEncryptRule(createEncryptRule());
-        tokenGenerator.setEncryptConditions(getEncryptConditions(updatesStatementContext));
-        Collection<SQLToken> sqlTokens = tokenGenerator.generateSQLTokens(updatesStatementContext);
+        UpdateStatementContext updateStatementContext = EncryptGeneratorFixtureBuilder.createUpdatesStatementContext();
+        generator.setDatabaseName(DefaultDatabase.LOGIC_NAME);
+        generator.setEncryptConditions(getEncryptConditions(updateStatementContext));
+        Collection<SQLToken> sqlTokens = generator.generateSQLTokens(updateStatementContext);
         assertThat(sqlTokens.size(), is(1));
         assertThat(sqlTokens.iterator().next().toString(), is("'123456'"));
     }
     
-    private Collection<EncryptCondition> getEncryptConditions(final UpdateStatementContext updatesStatementContext) {
-        return new EncryptConditionEngine(createEncryptRule(), Collections.singletonMap(DefaultDatabase.LOGIC_NAME, mock(ShardingSphereSchema.class)))
-                .createEncryptConditions(updatesStatementContext.getWhereSegments(), updatesStatementContext.getColumnSegments(), updatesStatementContext, DefaultDatabase.LOGIC_NAME);
+    private Collection<EncryptCondition> getEncryptConditions(final UpdateStatementContext updateStatementContext) {
+        return new EncryptConditionEngine(EncryptGeneratorFixtureBuilder.createEncryptRule(), Collections.singletonMap(DefaultDatabase.LOGIC_NAME, mock(ShardingSphereSchema.class)))
+                .createEncryptConditions(updateStatementContext.getWhereSegments(), updateStatementContext.getColumnSegments(), updateStatementContext, DefaultDatabase.LOGIC_NAME);
     }
 }
diff --git a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/InsertCipherNameTokenGeneratorTest.java b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/InsertCipherNameTokenGeneratorTest.java
index c42254f091b..bea7f235afd 100644
--- a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/InsertCipherNameTokenGeneratorTest.java
+++ b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/rewrite/token/generator/InsertCipherNameTokenGeneratorTest.java
@@ -29,13 +29,13 @@ import static org.junit.jupiter.api.Assertions.assertFalse;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 import static org.mockito.Mockito.mock;
 
-class InsertCipherNameTokenGeneratorTest extends EncryptGeneratorBaseTest {
+class InsertCipherNameTokenGeneratorTest {
     
     private final InsertCipherNameTokenGenerator generator = new InsertCipherNameTokenGenerator();
     
     @BeforeEach
     void setup() {
-        generator.setEncryptRule(createEncryptRule());
+        generator.setEncryptRule(EncryptGeneratorFixtureBuilder.createEncryptRule());
     }
     
     @Test
@@ -45,11 +45,11 @@ class InsertCipherNameTokenGeneratorTest extends EncryptGeneratorBaseTest {
     
     @Test
     void assertIsGenerateSQLTokenWithInsertStatementContext() {
-        assertTrue(generator.isGenerateSQLToken(createInsertStatementContext(Collections.emptyList())));
+        assertTrue(generator.isGenerateSQLToken(EncryptGeneratorFixtureBuilder.createInsertStatementContext(Collections.emptyList())));
     }
     
     @Test
     void assertGenerateSQLTokensWithInsertStatementContext() {
-        assertThat(generator.generateSQLTokens(createInsertStatementContext(Collections.emptyList())).size(), is(1));
+        assertThat(generator.generateSQLTokens(EncryptGeneratorFixtureBuilder.createInsertStatementContext(Collections.emptyList())).size(), is(1));
     }
 }