You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by du...@apache.org on 2022/07/15 07:30:41 UTC
[shardingsphere] branch master updated: Refactor SQLParserTestCases#getAllSQLParserTestCases (#19123)
This is an automated email from the ASF dual-hosted git repository.
duanzhengqiang 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 5218a421176 Refactor SQLParserTestCases#getAllSQLParserTestCases (#19123)
5218a421176 is described below
commit 5218a421176c113654f639675de94e1284dc2672
Author: liguoping <xd...@163.com>
AuthorDate: Fri Jul 15 15:30:28 2022 +0800
Refactor SQLParserTestCases#getAllSQLParserTestCases (#19123)
* Refactor SQLParserTestCases#getAllSQLParserTestCases
* isSQLParserTestCasesField method
---
.../jaxb/cases/domain/SQLParserTestCases.java | 408 ++-------------------
1 file changed, 22 insertions(+), 386 deletions(-)
diff --git a/shardingsphere-test/shardingsphere-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/jaxb/cases/domain/SQLParserTestCases.java b/shardingsphere-test/shardingsphere-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/jaxb/cases/domain/SQLParserTestCases.java
index f934d6da3c3..a81d02f9546 100644
--- a/shardingsphere-test/shardingsphere-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/jaxb/cases/domain/SQLParserTestCases.java
+++ b/shardingsphere-test/shardingsphere-parser-test/src/main/java/org/apache/shardingsphere/test/sql/parser/parameterized/jaxb/cases/domain/SQLParserTestCases.java
@@ -19,6 +19,7 @@ package org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domai
import com.google.common.base.Preconditions;
import lombok.Getter;
+import lombok.SneakyThrows;
import org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.CommonStatementTestCase;
import org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.SQLParserTestCase;
import org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain.statement.dal.AlterResourceGroupStatementTestCase;
@@ -408,6 +409,8 @@ import org.apache.shardingsphere.test.sql.parser.parameterized.jaxb.cases.domain
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
+import java.lang.reflect.Field;
+import java.lang.reflect.ParameterizedType;
import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
@@ -1586,398 +1589,31 @@ public final class SQLParserTestCases {
* @return all SQL parser test cases
*/
// CHECKSTYLE:OFF
+ @SneakyThrows(IllegalAccessException.class)
public Map<String, SQLParserTestCase> getAllSQLParserTestCases() {
Map<String, SQLParserTestCase> result = new HashMap<>();
- putAll(selectTestCases, result);
- putAll(updateTestCases, result);
- putAll(deleteTestCases, result);
- putAll(insertTestCases, result);
- putAll(createTableTestCases, result);
- putAll(createEditionTestCases, result);
- putAll(alterTableTestCases, result);
- putAll(dropTableTestCases, result);
- putAll(lockTableTestCases, result);
- putAll(dropTextSearchTestCases, result);
- putAll(truncateTestCases, result);
- putAll(dropEditionTestCases, result);
- putAll(dropOutlineTestCases, result);
- putAll(alterOutlineTestCases, result);
- putAll(createIndexTestCases, result);
- putAll(alterIndexTestCases, result);
- putAll(dropIndexTestCases, result);
- putAll(setConstraintsTestCases, result);
- putAll(setTransactionTestCases, result);
- putAll(beginTransactionTestCases, result);
- putAll(setAutoCommitTestCases, result);
- putAll(commitTestCases, result);
- putAll(rollbackTestCases, result);
- putAll(savepointTestCases, result);
- putAll(grantTestCases, result);
- putAll(revokeTestCases, result);
- putAll(createUserTestCases, result);
- putAll(alterUserTestCases, result);
- putAll(dropUserTestCases, result);
- putAll(renameUserTestCases, result);
- putAll(denyUserTestCases, result);
- putAll(createLoginTestCases, result);
- putAll(alterLoginTestCases, result);
- putAll(dropLoginTestCases, result);
- putAll(createRoleTestCases, result);
- putAll(alterRoleTestCases, result);
- putAll(dropRoleTestCases, result);
- putAll(setDefaultRoleTestCases, result);
- putAll(setRoleTestCases, result);
- putAll(setPasswordTestCases, result);
- putAll(useTestCases, result);
- putAll(describeTestCases, result);
- putAll(showDatabasesTestCases, result);
- putAll(showTablesTestCases, result);
- putAll(showFunctionStatusTestCases, result);
- putAll(showProcedureStatusTestCases, result);
- putAll(showRelaylogEventsTestCases, result);
- putAll(showSlaveHostsTestCases, result);
- putAll(showProcedureCodeTestCases, result);
- putAll(showColumnsTestCases, result);
- putAll(showCreateTableTestCases, result);
- putAll(showCreateTriggerTestCases, result);
- putAll(showCreateUserTestCases, result);
- putAll(showTableStatusTestCases, result);
- putAll(showIndexTestCases, result);
- putAll(showTestCases, result);
- putAll(setParameterTestCases, result);
- putAll(commonTestCases, result);
- putAll(alterFunctionTestCases, result);
- putAll(alterServerTestCases, result);
- putAll(alterSessionTestCases, result);
- putAll(alterSynonymTestCases, result);
- putAll(alterTypeTestCases, result);
- putAll(alterRuleTestCases, result);
- putAll(alterRoutineTestCases, result);
- putAll(alterDirectoryTestCases, result);
- putAll(alterSystemTestCases, result);
- putAll(alterProcedureTestCases, result);
- putAll(alterPublicationTestCases, result);
- putAll(alterPolicyTestCases, result);
- putAll(alterDatabaseTestCases, result);
- putAll(alterDimensionTestCases, result);
- putAll(createViewTestCases, result);
- putAll(createSynonymTestCases, result);
- putAll(createAggregateTestCases, result);
- putAll(createPublicationTestCases, result);
- putAll(dropSynonymTestCases, result);
- putAll(createDirectoryTestCases, result);
- putAll(createTriggerTestCases, result);
- putAll(createServerTestCases, result);
- putAll(createProcedureTestCases, result);
- putAll(createFunctionTestCases, result);
- putAll(createDatabaseTestCases, result);
- putAll(createDatabaseLinkTestCases, result);
- putAll(dropDatabaseLinkTestCases, result);
- putAll(alterDatabaseDictionaryTestCases, result);
- putAll(alterDatabaseLinkTestCases, result);
- putAll(alterViewTestCases, result);
- putAll(alterPackageTestCases, result);
- putAll(dropPackageTestCases, result);
- putAll(createDimensionTestCases, result);
- putAll(dropDimensionTestCases, result);
- putAll(dropDirectoryTestCases, result);
- putAll(dropViewTestCases, result);
- putAll(dropTriggerTestCases, result);
- putAll(alterTriggerTestCases, result);
- putAll(dropEventTriggerTestCases, result);
- putAll(showTriggerTestCases, result);
- putAll(dropServerTestCases, result);
- putAll(dropPolicyTestCases, result);
- putAll(dropProcedureTestCases, result);
- putAll(dropRoutineTestCases, result);
- putAll(dropRuleTestCases, result);
- putAll(dropStatisticsTestCases, result);
- putAll(dropPublicationTestCases, result);
- putAll(dropSubscriptionTestCases, result);
- putAll(dropFunctionTestCases, result);
- putAll(dropGroupTestCases, result);
- putAll(dropDatabaseTestCases, result);
- putAll(callProcedureTestCases, result);
- putAll(doTestCases, result);
- putAll(copyTestCases, result);
- putAll(xaTestCases, result);
- putAll(mergeTestCases, result);
- putAll(createSequenceTestCases, result);
- putAll(alterSequenceTestCases, result);
- putAll(dropSequenceTestCases, result);
- putAll(analyzeTestCases, result);
- putAll(associateStatisticsTestCases, result);
- putAll(disassociateStatisticsTestCases, result);
- putAll(auditTestCases, result);
- putAll(noAuditTestCases, result);
- putAll(commentTestCases, result);
- putAll(flashbackDatabaseTestCases, result);
- putAll(flashbackTableTestCases, result);
- putAll(purgeTestCases, result);
- putAll(renameTestCases, result);
- putAll(addResourceTestCases, result);
- putAll(alterResourceTestCases, result);
- putAll(alterDatabaseDiscoveryDefinitionRuleTestCases, result);
- putAll(alterDataBaseDiscoveryConstructionRuleTestCases, result);
- putAll(alterEncryptRuleTestCases, result);
- putAll(alterReadwriteSplittingRuleTestCases, result);
- putAll(alterShardingBindingTableRulesTestCases, result);
- putAll(alterShardingBroadcastTableRulesTestCases, result);
- putAll(alterShardingAutoTableRuleTestCases, result);
- putAll(createDatabaseDiscoveryDefinitionRuleTestCases, result);
- putAll(createDataBaseDiscoveryConstructionRuleTestCases, result);
- putAll(createDatabaseDiscoveryTypeTestCases, result);
- putAll(createDatabaseDiscoveryHeartbeatTestCases, result);
- putAll(alterDatabaseDiscoveryHeartbeatTestCases, result);
- putAll(alterDatabaseDiscoveryTypeTestCases, result);
- putAll(createEncryptRuleTestCases, result);
- putAll(createReadwriteSplittingRuleTestCases, result);
- putAll(createShardingBindingTableRulesTestCases, result);
- putAll(createShardingBroadcastTableRulesTestCases, result);
- putAll(createShardingAutoTableRuleTestCases, result);
- putAll(dropDataBaseDiscoveryRuleTestCases, result);
- putAll(dropDataBaseDiscoveryTypeTestCases, result);
- putAll(dropDataBaseDiscoveryHeartbeatTestCases, result);
- putAll(dropResourceTestCases, result);
- putAll(dropEncryptRuleTestCases, result);
- putAll(dropReadwriteSplittingRuleTestCases, result);
- putAll(dropShardingBindingTableRulesTestCases, result);
- putAll(dropShardingBroadcastTableRulesTestCases, result);
- putAll(dropShardingTableRuleTestCases, result);
- putAll(showDataBaseDiscoveryRulesTestCases, result);
- putAll(showEncryptRulesTestCases, result);
- putAll(showReadwriteSplittingRulesTestCases, result);
- putAll(showShardingBindingTableRulesTestCases, result);
- putAll(showShardingBroadcastTableRulesTestCases, result);
- putAll(showShardingAlgorithmsTestCases, result);
- putAll(showShardingAuditorsTestCases, result);
- putAll(showShardingTableRulesTestCases, result);
- putAll(showShardingTableRuleTestCases, result);
- putAll(showScalingListTestCases, result);
- putAll(checkScalingTestCases, result);
- putAll(showScalingStatusTestCases, result);
- putAll(showScalingCheckAlgorithmsTestCases, result);
- putAll(stopScalingSourceWritingTestCases, result);
- putAll(restoreScalingSourceWritingTestCases, result);
- putAll(applyScalingTestCases, result);
- putAll(resetScalingTestCases, result);
- putAll(dropScalingTestCases, result);
- putAll(stopScalingTestCases, result);
- putAll(startScalingTestCases, result);
- putAll(createShardingScalingRuleTestCases, result);
- putAll(dropShardingScalingRuleTestCases, result);
- putAll(enableShardingScalingRuleTestCases, result);
- putAll(disableShardingScalingRuleTestCases, result);
- putAll(showShardingScalingRulesTestCases, result);
- putAll(showVariableTestCases, result);
- putAll(showAllVariableTestCases, result);
- putAll(setVariableTestCases, result);
- putAll(previewTestCases, result);
- putAll(parseStatementAsserts, result);
- putAll(setReadwriteSplittingHintTestCases, result);
- putAll(setShardingHintDatabaseValueTestCases, result);
- putAll(addShardingHintDatabaseValueTestCases, result);
- putAll(addShardingHintTableValueTestCases, result);
- putAll(showReadwriteSplittingHintStatusTestCases, result);
- putAll(showShardingHintStatusTestCases, result);
- putAll(clearReadwriteSplittingHintTestCases, result);
- putAll(clearShardingHintTestCases, result);
- putAll(clearHintTestCases, result);
- putAll(createShadowRuleTestCases, result);
- putAll(dropShadowRuleTestCases, result);
- putAll(alterShadowRuleTestCases, result);
- putAll(alterShadowAlgorithmTestCases, result);
- putAll(showShadowRulesTestCases, result);
- putAll(showShadowTableRulesTestCases, result);
- putAll(showShadowAlgorithmsTestCases, result);
- putAll(dropShadowAlgorithmTestCases, result);
- putAll(createServiceTestCases, result);
- putAll(alterServiceTestCases, result);
- putAll(dropServiceTestCases, result);
- putAll(createSchemaTestCases, result);
- putAll(alterSchemaTestCases, result);
- putAll(dropSchemaTestCases, result);
- putAll(installComponentTestCases, result);
- putAll(flushTestCases, result);
- putAll(installPluginTestCases, result);
- putAll(showInstanceTestCases, result);
- putAll(cloneTestCases, result);
- putAll(showReadwriteSplittingReadResourcesTestCases, result);
- putAll(uninstallComponentTestCases, result);
- putAll(alterResourceGroupTestCases, result);
- putAll(createResourceGroupTestCases, result);
- putAll(dropResourceGroupTestCases, result);
- putAll(binlogTestCases, result);
- putAll(uninstallPluginTestCases, result);
- putAll(showSingleTableTestCases, result);
- putAll(showSingleTableRulesTestCases, result);
- putAll(showShardingTableNodesTestCases, result);
- putAll(setResourceGroupTestCases, result);
- putAll(optimizeTableTestCases, result);
- putAll(repairTableTestCases, result);
- putAll(createShardingAlgorithmTestCases, result);
- putAll(createShardingKeyGeneratorTestCases, result);
- putAll(createShardingAuditorTestCases, result);
- putAll(createDefaultShardingStrategyTestCases, result);
- putAll(alterDefaultShardingStrategyTestCases, result);
- putAll(createShardingTableRuleTestCases, result);
- putAll(alterShardingTableRuleTestCases, result);
- putAll(resetTestCases, result);
- putAll(resetPersistTestCases, result);
- putAll(showReplicasTestCases, result);
- putAll(showReplicaStatusTestCases, result);
- putAll(showSlaveStatusTestCases, result);
- putAll(alterShardingAlgorithmTestCases, result);
- putAll(alterShardingKeyGeneratorTestCases, result);
- putAll(alterShardingAuditorTestCases, result);
- putAll(killTestCases, result);
- putAll(createDefaultShadowAlgorithmTestCases, result);
- putAll(cacheIndexTestCases, result);
- putAll(loadIndexInfoTestCases, result);
- putAll(createShadowAlgorithmTestCases, result);
- putAll(createDefaultSingleTableRuleTestCases, result);
- putAll(alterDefaultSingleTableRuleTestCases, result);
- putAll(dropDefaultSingleTableRuleTestCases, result);
- putAll(shutdownTestCases, result);
- putAll(showOpenTablesTestCases, result);
- putAll(showStatusTestCases, result);
- putAll(checkTableTestCases, result);
- putAll(checksumTableTestCases, result);
- putAll(refreshTableMetadataTestCases, result);
- putAll(showEventsTestCases, result);
- putAll(showCharacterSetTestCases, result);
- putAll(showCollationTestCases, result);
- putAll(showVariablesTestCases, result);
- putAll(showShardingKeyGeneratorsTestCases, result);
- putAll(showDefaultShardingStrategyTestCases, result);
- putAll(dropShardingKeyGeneratorTestCases, result);
- putAll(dropDefaultShardingStrategyTestCases, result);
- putAll(delimiterTestCases, result);
- putAll(dropDomainTestCases, result);
- putAll(showSQLParserRuleTestCases, result);
- putAll(createDomainTestCases, result);
- putAll(createRuleTestCases, result);
- putAll(showAuthorityRuleTestCases, result);
- putAll(showTransactionRuleTestCases, result);
- putAll(showTrafficRulesTestCases, result);
- putAll(createTrafficRulesTestCases, result);
- putAll(alterTrafficRulesTestCases, result);
- putAll(alterSQLParserRuleTestCases, result);
- putAll(createTypeTestCases, result);
- putAll(createConversionTestCases, result);
- putAll(createCastTestCases, result);
- putAll(dropConversionTestCases, result);
- putAll(alterDomainTestCases, result);
- putAll(alterAggregateTestCases, result);
- putAll(alterConversionTestCases, result);
- putAll(alterCollationTestCases, result);
- putAll(alterDefaultPrivilegesTestCases, result);
- putAll(alterForeignDataWrapperTestCases, result);
- putAll(alterForeignTableTestCases, result);
- putAll(dropForeignTableTestCases, result);
- putAll(alterGroupTestCases, result);
- putAll(alterMaterializedViewTestCases, result);
- putAll(alterJavaTestCases, result);
- putAll(alterAuditPolicyTestCases, result);
- putAll(alterClusterTestCases, result);
- putAll(alterDiskgroupTestCases, result);
- putAll(alterOperatorTestCases, result);
- putAll(createTextSearchTestCases, result);
- putAll(alterTextSearchTestCases, result);
- putAll(createLanguageTestCases, result);
- putAll(alterLanguageTestCases, result);
- putAll(dropLanguageTestCases, result);
- putAll(showTableMetadataTestCases, result);
- putAll(dropTrafficRuleTestCases, result);
- putAll(labelTestCases, result);
- putAll(unlabelTestCases, result);
- putAll(alterInstanceTestCases, result);
- putAll(prepareDistSQLTestCases, result);
- putAll(applyDistSQLTestCases, result);
- putAll(discardDistSQLTestCases, result);
- putAll(helpTestCases, result);
- putAll(showUnusedShardingAlgorithmsTestCases, result);
- putAll(showUnusedShardingKeyGeneratorsTestCases, result);
- putAll(renameTableTestCases, result);
- putAll(showBinlogEventsTestCases, result);
- putAll(createExtensionTestCases, result);
- putAll(countDatabaseRulesTestCases, result);
- putAll(alterExtensionTestCases, result);
- putAll(dropExtensionTestCases, result);
- putAll(declareTestCases, result);
- putAll(discardTestCases, result);
- putAll(lockTestCases, result);
- putAll(unlockTestCases, result);
- putAll(exportDatabaseConfigurationTestCases, result);
- putAll(showRulesUsedResourceTestCases, result);
- putAll(preparedTestCases, result);
- putAll(showShardingTableRulesUsedAlgorithmTestCases, result);
- putAll(showShardingTableRulesUsedKeyGeneratorTestCases, result);
- putAll(setUserTestCases, result);
- putAll(dropShardingAlgorithmTestCases, result);
- putAll(createTablespaceTestCases, result);
- putAll(importDatabaseConfigurationTestCases, result);
- putAll(dropOwnedTestCases, result);
- putAll(dropOperatorTestCases, result);
- putAll(dropMaterializedViewTestCases, result);
- putAll(dropCastTestCases, result);
- putAll(dropAggregateTestCases, result);
- putAll(dropCollationTestCases, result);
- putAll(dropForeignDataWrapperTestCases, result);
- putAll(dropTypeTestCases, result);
- putAll(dropOperatorClassTestCases, result);
- putAll(dropOperatorFamilyTestCases, result);
- putAll(dropAccessMethodTestCases, result);
- putAll(revertTestCases, result);
- putAll(alterAnalyticViewTestCases, result);
- putAll(alterAttributeDimensionTestCases, result);
- putAll(createContextTestCases, result);
- putAll(createSPFileTestCases, result);
- putAll(createPFileTestCases, result);
- putAll(createControlFileTestCases, result);
- putAll(createFlashbackArchiveTestCases, result);
- putAll(alterFlashbackArchiveTestCases, result);
- putAll(dropFlashbackArchiveTestCases, result);
- putAll(createDiskgroupTestCases, result);
- putAll(dropDiskgroupTestCases, result);
- putAll(createRollbackSegmentTestCases, result);
- putAll(dropRollbackSegmentTestCases, result);
- putAll(listenTestCases, result);
- putAll(notifyTestCases, result);
- putAll(refreshMatViewStmtStatementTestCases, result);
- putAll(reindexStatementTestCases, result);
- putAll(unlistenTestCases, result);
- putAll(securityLabelStmtStatementTestCases, result);
- putAll(createLockdownProfileTestCases, result);
- putAll(dropLockdownProfileTestCases, result);
- putAll(createInmemoryJoinGroupTestCases, result);
- putAll(alterInmemoryJoinGroupTestCases, result);
- putAll(dropInmemoryJoinGroupTestCases, result);
- putAll(createRestorePointTestCases, result);
- putAll(dropRestorePointTestCases, result);
- putAll(alterLibraryTestCases, result);
- putAll(alterMaterializedZonemapTestCases, result);
- putAll(cursorTestCases, result);
- putAll(closeTestCases, result);
- putAll(moveTestCases, result);
- putAll(fetchTestCases, result);
- putAll(checkpointTestCases, result);
- putAll(clusterStatementTestCases, result);
- putAll(createAccessMethodTestCases, result);
- putAll(countSingleTableRuleStatementTestCases, result);
- putAll(countShardingRuleStatementTestCases, result);
- putAll(countReadwriteSplittingRuleStatementTestCases, result);
- putAll(countDatabaseDiscoveryRuleStatementTestCases, result);
- putAll(countEncryptRuleStatementTestCases, result);
- putAll(countShadowRuleStatementTestCases, result);
- putAll(createCollationStatementTestCases, result);
- putAll(prepareTransactionTestCases, result);
- putAll(reassignOwnedStatementTestCases, result);
- putAll(createEventTriggerStatementTestCases, result);
+ Field[] fields = SQLParserTestCases.class.getDeclaredFields();
+ for (Field each : fields) {
+ if (isSQLParserTestCasesField(each)) {
+ each.setAccessible(true);
+ List<? extends SQLParserTestCase> testCases = (List<? extends SQLParserTestCase>) each.get(this);
+ if (!testCases.isEmpty()) {
+ putAll(testCases, result);
+ }
+ }
+ }
return result;
}
// CHECKSTYLE:ON
+ private boolean isSQLParserTestCasesField(final Field field) {
+ if (field.isAnnotationPresent(XmlElement.class) && List.class == field.getType() && field.getGenericType() instanceof ParameterizedType) {
+ Class<?> actualTypeArgument = (Class<?>) ((ParameterizedType) field.getGenericType()).getActualTypeArguments()[0];
+ return SQLParserTestCase.class.isAssignableFrom(actualTypeArgument);
+ }
+ return false;
+ }
+
private void putAll(final List<? extends SQLParserTestCase> sqlParserTestCases, final Map<String, SQLParserTestCase> target) {
Map<String, SQLParserTestCase> sqlParserTestCaseMap = getSQLParserTestCases(sqlParserTestCases);
Collection<String> sqlParserTestCaseIds = new HashSet<>(sqlParserTestCaseMap.keySet());