Class SqlTests


  • public abstract class SqlTests
    extends java.lang.Object
    Utility methods.
    • Field Detail

      • ANY_TYPE_CHECKER

        public static final SqlTester.TypeChecker ANY_TYPE_CHECKER
        Checker which allows any type.
      • ANY_PARAMETER_CHECKER

        public static final SqlTester.ParameterChecker ANY_PARAMETER_CHECKER
        Checker that allows any number or type of parameters.
      • ANY_RESULT_CHECKER

        public static final SqlTester.ResultChecker ANY_RESULT_CHECKER
        Checker that allows any result.
      • LINE_COL_PATTERN

        private static final java.util.regex.Pattern LINE_COL_PATTERN
      • LINE_COL_TWICE_PATTERN

        private static final java.util.regex.Pattern LINE_COL_TWICE_PATTERN
    • Constructor Detail

      • SqlTests

        public SqlTests()
    • Method Detail

      • getTypeString

        public static java.lang.String getTypeString​(org.apache.calcite.rel.type.RelDataType sqlType)
        Helper function to get the string representation of a RelDataType (include precision/scale but no charset or collation)
        Parameters:
        sqlType - Type
        Returns:
        String representation of type
      • generateAggQuery

        public static java.lang.String generateAggQuery​(java.lang.String expr,
                                                        java.lang.String[] inputValues)
      • generateAggQueryWithMultipleArgs

        public static java.lang.String generateAggQueryWithMultipleArgs​(java.lang.String expr,
                                                                        java.lang.String[][] inputValues)
      • generateWinAggQuery

        public static java.lang.String generateWinAggQuery​(java.lang.String expr,
                                                           java.lang.String windowSpec,
                                                           java.lang.String[] inputValues)
      • compareResultSet

        public static void compareResultSet​(java.sql.ResultSet resultSet,
                                            java.util.Set<java.lang.String> refSet)
                                     throws java.lang.Exception
        Compares the first column of a result set against a String-valued reference set, disregarding order entirely.
        Parameters:
        resultSet - Result set
        refSet - Expected results
        Throws:
        java.lang.Exception - .
      • rep

        private static org.apache.calcite.avatica.ColumnMetaData.Rep rep​(int columnType)
      • compareResultSetWithPattern

        public static void compareResultSetWithPattern​(java.sql.ResultSet resultSet,
                                                       java.util.regex.Pattern pattern)
                                                throws java.lang.Exception
        Compares the first column of a result set against a pattern. The result set must return exactly one row.
        Parameters:
        resultSet - Result set
        pattern - Expected pattern
        Throws:
        java.lang.Exception
      • compareResultSetWithDelta

        public static void compareResultSetWithDelta​(java.sql.ResultSet resultSet,
                                                     double expected,
                                                     double delta)
                                              throws java.lang.Exception
        Compares the first column of a result set against a numeric result, within a given tolerance. The result set must return exactly one row.
        Parameters:
        resultSet - Result set
        expected - Expected result
        delta - Tolerance
        Throws:
        java.lang.Exception
      • checkEx

        public static void checkEx​(java.lang.Throwable ex,
                                   java.lang.String expectedMsgPattern,
                                   org.apache.calcite.sql.parser.SqlParserUtil.StringAndPos sap,
                                   SqlTests.Stage stage)
        Checks whether an exception matches the expected pattern. If sap contains an error location, checks this too.
        Parameters:
        ex - Exception thrown
        expectedMsgPattern - Expected pattern
        sap - Query and (optional) position in query
        stage - Query processing stage