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 2024/10/29 02:59:08 UTC
(shardingsphere) branch master updated: Add more test cases on MaskRule (#33447)
This is an automated email from the ASF dual-hosted git repository.
zhangliang 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 42a8189b5cd Add more test cases on MaskRule (#33447)
42a8189b5cd is described below
commit 42a8189b5cd89b1ea35cd21fcfe4e6973132d6a7
Author: Liang Zhang <zh...@apache.org>
AuthorDate: Tue Oct 29 10:59:02 2024 +0800
Add more test cases on MaskRule (#33447)
---
.../shardingsphere/mask/rule/MaskRuleTest.java | 43 ++++++++++++++++++++--
1 file changed, 39 insertions(+), 4 deletions(-)
diff --git a/features/mask/core/src/test/java/org/apache/shardingsphere/mask/rule/MaskRuleTest.java b/features/mask/core/src/test/java/org/apache/shardingsphere/mask/rule/MaskRuleTest.java
index 08b95f43b7f..ff92a461273 100644
--- a/features/mask/core/src/test/java/org/apache/shardingsphere/mask/rule/MaskRuleTest.java
+++ b/features/mask/core/src/test/java/org/apache/shardingsphere/mask/rule/MaskRuleTest.java
@@ -43,15 +43,15 @@ class MaskRuleTest {
}
private MaskRuleConfiguration createMaskRuleConfiguration() {
- MaskColumnRuleConfiguration maskColumnRuleConfig = new MaskColumnRuleConfiguration("user_id", "t_mask_user_id_md5");
- MaskTableRuleConfiguration maskTableRuleConfig = new MaskTableRuleConfiguration("t_mask", Collections.singleton(maskColumnRuleConfig));
+ MaskColumnRuleConfiguration maskColumnRuleConfig = new MaskColumnRuleConfiguration("foo_id", "t_mask_foo_id_md5");
+ MaskTableRuleConfiguration maskTableRuleConfig = new MaskTableRuleConfiguration("foo_tbl", Collections.singleton(maskColumnRuleConfig));
AlgorithmConfiguration algorithmConfig = new AlgorithmConfiguration("md5", new Properties());
- return new MaskRuleConfiguration(Collections.singleton(maskTableRuleConfig), Collections.singletonMap("t_mask_user_id_md5", algorithmConfig));
+ return new MaskRuleConfiguration(Collections.singleton(maskTableRuleConfig), Collections.singletonMap("t_mask_foo_id_md5", algorithmConfig));
}
@Test
void assertFindMaskTableWhenTableNameExists() {
- assertTrue(maskRule.findMaskTable("t_mask").isPresent());
+ assertTrue(maskRule.findMaskTable("foo_tbl").isPresent());
}
@Test
@@ -65,4 +65,39 @@ class MaskRuleTest {
maskRule.updateConfiguration(toBeUpdatedRuleConfig);
assertThat(maskRule.getConfiguration(), is(toBeUpdatedRuleConfig));
}
+
+ @Test
+ void assertPartialUpdateWithToBeAddedTables() {
+ assertTrue(maskRule.partialUpdate(createPartialAddTablesMaskRuleConfiguration()));
+ assertTrue(maskRule.findMaskTable("bar_tbl").isPresent());
+ }
+
+ private MaskRuleConfiguration createPartialAddTablesMaskRuleConfiguration() {
+ MaskColumnRuleConfiguration maskColumnRuleConfig = new MaskColumnRuleConfiguration("bar_id", "t_mask_bar_id_md5");
+ MaskTableRuleConfiguration maskTableRuleConfig = new MaskTableRuleConfiguration("bar_tbl", Collections.singleton(maskColumnRuleConfig));
+ AlgorithmConfiguration algorithmConfig = new AlgorithmConfiguration("md5", new Properties());
+ return new MaskRuleConfiguration(Collections.singleton(maskTableRuleConfig), Collections.singletonMap("t_mask_bar_id_md5", algorithmConfig));
+ }
+
+ @Test
+ void assertPartialUpdateWithToBeRemovedTables() {
+ assertTrue(maskRule.partialUpdate(createPartialRemoveTablesMaskRuleConfiguration()));
+ assertFalse(maskRule.findMaskTable("foo_tbl").isPresent());
+ }
+
+ private MaskRuleConfiguration createPartialRemoveTablesMaskRuleConfiguration() {
+ AlgorithmConfiguration algorithmConfig = new AlgorithmConfiguration("md5", new Properties());
+ return new MaskRuleConfiguration(Collections.emptyList(), Collections.singletonMap("t_mask_bar_id_md5", algorithmConfig));
+ }
+
+ @Test
+ void assertPartialUpdateWithToBeRemovedAlgorithms() {
+ assertFalse(maskRule.partialUpdate(createPartialRemovedAlgorithmsMaskRuleConfiguration()));
+ }
+
+ private MaskRuleConfiguration createPartialRemovedAlgorithmsMaskRuleConfiguration() {
+ MaskColumnRuleConfiguration maskColumnRuleConfig = new MaskColumnRuleConfiguration("foo_id", "t_mask_foo_id_md5");
+ MaskTableRuleConfiguration maskTableRuleConfig = new MaskTableRuleConfiguration("foo_tbl", Collections.singleton(maskColumnRuleConfig));
+ return new MaskRuleConfiguration(Collections.singleton(maskTableRuleConfig), Collections.emptyMap());
+ }
}