This is an automated email from the ASF dual-hosted git repository.
tuichenchuxin 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 ade41696f7c add sql hint extractor test case. (#24008)
ade41696f7c is described below
commit ade41696f7cc16340caf737a8b5889f8a288f2ce
Author: Zonglei Dong <[email protected]>
AuthorDate: Mon Feb 6 15:41:43 2023 +0800
add sql hint extractor test case. (#24008)
---
.../infra/hint/SQLHintExtractorTest.java | 29 +++++++++++++++++++++-
1 file changed, 28 insertions(+), 1 deletion(-)
diff --git
a/infra/common/src/test/java/org/apache/shardingsphere/infra/hint/SQLHintExtractorTest.java
b/infra/common/src/test/java/org/apache/shardingsphere/infra/hint/SQLHintExtractorTest.java
index 5bf9eb201a3..678171140de 100644
---
a/infra/common/src/test/java/org/apache/shardingsphere/infra/hint/SQLHintExtractorTest.java
+++
b/infra/common/src/test/java/org/apache/shardingsphere/infra/hint/SQLHintExtractorTest.java
@@ -43,6 +43,11 @@ public final class SQLHintExtractorTest {
assertTrue(new SQLHintExtractor(statement).isHintWriteRouteOnly());
}
+ @Test
+ public void assertSQLHintWriteRouteOnlyWithCommentString() {
+ assertTrue(new SQLHintExtractor("/* SHARDINGSPHERE_HINT:
WRITE_ROUTE_ONLY=true */").isHintWriteRouteOnly());
+ }
+
@Test
public void assertSQLHintSkipEncryptRewrite() {
AbstractSQLStatement statement = mock(AbstractSQLStatement.class);
@@ -50,6 +55,11 @@ public final class SQLHintExtractorTest {
assertTrue(new SQLHintExtractor(statement).isHintSkipEncryptRewrite());
}
+ @Test
+ public void assertSQLHintSkipEncryptRewriteWithCommentString() {
+ assertTrue(new SQLHintExtractor("/* SHARDINGSPHERE_HINT:
SKIP_ENCRYPT_REWRITE=true */").isHintSkipEncryptRewrite());
+ }
+
@Test
public void assertSQLHintDisableAuditNames() {
AbstractSQLStatement statement = mock(AbstractSQLStatement.class);
@@ -59,6 +69,13 @@ public final class SQLHintExtractorTest {
assertTrue(actual.containsAll(Arrays.asList("sharding_audit1",
"sharding_audit2")));
}
+ @Test
+ public void assertSQLHintDisableAuditNamesWithCommentString() {
+ Collection<String> actual = new SQLHintExtractor("/*
SHARDINGSPHERE_HINT: DISABLE_AUDIT_NAMES=sharding_audit1 sharding_audit2
*/").findDisableAuditNames();
+ assertThat(actual.size(), is(2));
+ assertTrue(actual.containsAll(Arrays.asList("sharding_audit1",
"sharding_audit2")));
+ }
+
@Test
public void assertSQLHintShardingDatabaseValue() {
AbstractSQLStatement statement = mock(AbstractSQLStatement.class);
@@ -73,6 +90,11 @@ public final class SQLHintExtractorTest {
assertThat(new
SQLHintExtractor(statement).getHintShardingDatabaseValue("t_order"),
is(Collections.singletonList(new BigInteger("10"))));
}
+ @Test
+ public void assertSQLHintShardingDatabaseValueWithCommentString() {
+ assertThat(new SQLHintExtractor("/* SHARDINGSPHERE_HINT:
SHARDING_DATABASE_VALUE=10 */").getHintShardingDatabaseValue("t_order"),
is(Collections.singletonList(new BigInteger("10"))));
+ }
+
@Test
public void assertSQLHintShardingDatabaseValueWithStringHintValue() {
AbstractSQLStatement statement = mock(AbstractSQLStatement.class);
@@ -87,6 +109,11 @@ public final class SQLHintExtractorTest {
assertThat(new
SQLHintExtractor(statement).getHintShardingTableValue("t_order"),
is(Collections.singletonList(new BigInteger("10"))));
}
+ @Test
+ public void assertSQLHintShardingTableValueWithCommentString() {
+ assertThat(new SQLHintExtractor("/* SHARDINGSPHERE_HINT:
SHARDING_TABLE_VALUE=10 */").getHintShardingTableValue("t_order"),
is(Collections.singletonList(new BigInteger("10"))));
+ }
+
@Test
public void assertSQLHintShardingTableValueWithTableName() {
AbstractSQLStatement statement = mock(AbstractSQLStatement.class);
@@ -110,7 +137,7 @@ public final class SQLHintExtractorTest {
@Test
public void assertSQLHintShadowWithCommentString() {
- assertTrue(new SQLHintExtractor("/* SHARDINGSPHERE_HINT:
WRITE_ROUTE_ONLY=true */").isHintWriteRouteOnly());
+ assertTrue(new SQLHintExtractor("/* SHARDINGSPHERE_HINT: SHADOW=true
*/").isShadow());
}
@Test