| <!DOCTYPE HTML> |
| <!-- NewPage --> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc --> |
| <title>SqlTester (Calcite 1.20.0 Test API)</title> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style"> |
| <link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style"> |
| <script type="text/javascript" src="../../../../../script.js"></script> |
| <script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script> |
| <script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script> |
| <!--[if IE]> |
| <script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script> |
| <![endif]--> |
| <script type="text/javascript" src="../../../../../jquery/jquery-3.3.1.js"></script> |
| <script type="text/javascript" src="../../../../../jquery/jquery-migrate-3.0.1.js"></script> |
| <script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script> |
| </head> |
| <body> |
| <script type="text/javascript"><!-- |
| try { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="SqlTester (Calcite 1.20.0 Test API)"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| var data = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6,"i16":6,"i17":6,"i18":6,"i19":6,"i20":6,"i21":6,"i22":6,"i23":6,"i24":6,"i25":6,"i26":6,"i27":6}; |
| var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]}; |
| var altColor = "altColor"; |
| var rowColor = "rowColor"; |
| var tableTab = "tableTab"; |
| var activeTableTab = "activeTableTab"; |
| var pathtoroot = "../../../../../"; |
| var useModuleDirectories = true; |
| loadScripts(document, 'script');</script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <header role="banner"> |
| <nav role="navigation"> |
| <div class="fixedNav"> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="topNav"><a id="navbar.top"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> |
| <a id="navbar.top.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../../index.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/SqlTester.html">Use</a></li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../../../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../../../../index-all.html">Index</a></li> |
| <li><a href="../../../../../help-doc.html">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList" id="allclasses_navbar_top"> |
| <li><a href="../../../../../allclasses.html">All Classes</a></li> |
| </ul> |
| <ul class="navListSearch"> |
| <li><label for="search">SEARCH:</label> |
| <input type="text" id="search" value="search" disabled="disabled"> |
| <input type="reset" id="reset" value="reset" disabled="disabled"> |
| </li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_top"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li><a href="#nested.class.summary">Nested</a> | </li> |
| <li>Field | </li> |
| <li>Constr | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li>Constr | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a id="skip.navbar.top"> |
| <!-- --> |
| </a></div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| </div> |
| <div class="navPadding"> </div> |
| <script type="text/javascript"><!-- |
| $('.navPadding').css('padding-top', $('.fixedNav').css("height")); |
| //--> |
| </script> |
| </nav> |
| </header> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <main role="main"> |
| <div class="header"> |
| <div class="subTitle"><span class="packageLabelInType">Package</span> <a href="package-summary.html">org.apache.calcite.sql.test</a></div> |
| <h2 title="Interface SqlTester" class="title">Interface SqlTester</h2> |
| </div> |
| <div class="contentContainer"> |
| <div class="description"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <dl> |
| <dt>All Superinterfaces:</dt> |
| <dd><code>java.lang.AutoCloseable</code>, <code><a href="../../test/SqlValidatorTestCase.Tester.html" title="interface in org.apache.calcite.test">SqlValidatorTestCase.Tester</a></code></dd> |
| </dl> |
| <dl> |
| <dt>All Known Implementing Classes:</dt> |
| <dd><code><a href="AbstractSqlTester.html" title="class in org.apache.calcite.sql.test">AbstractSqlTester</a></code>, <code><a href="SqlOperatorBaseTest.TesterImpl.html" title="class in org.apache.calcite.sql.test">SqlOperatorBaseTest.TesterImpl</a></code>, <code><a href="SqlRuntimeTester.html" title="class in org.apache.calcite.sql.test">SqlRuntimeTester</a></code>, <code><a href="SqlValidatorTester.html" title="class in org.apache.calcite.sql.test">SqlValidatorTester</a></code></dd> |
| </dl> |
| <hr> |
| <pre>public interface <span class="typeNameLabel">SqlTester</span> |
| extends java.lang.AutoCloseable, <a href="../../test/SqlValidatorTestCase.Tester.html" title="interface in org.apache.calcite.test">SqlValidatorTestCase.Tester</a></pre> |
| <div class="block">SqlTester defines a callback for testing SQL queries and expressions. |
| |
| <p>The idea is that when you define an operator (or another piece of SQL |
| functionality), you can define the logical behavior of that operator once, as |
| part of that operator. Later you can define one or more physical |
| implementations of that operator, and test them all using the same set of |
| tests. |
| |
| <p>Specific implementations of <code>SqlTester</code> might evaluate the |
| queries in different ways, for example, using a C++ versus Java calculator. |
| An implementation might even ignore certain calls altogether.</div> |
| </li> |
| </ul> |
| </div> |
| <div class="summary"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ======== NESTED CLASS SUMMARY ======== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="nested.class.summary"> |
| <!-- --> |
| </a> |
| <h3>Nested Class Summary</h3> |
| <table class="memberSummary"> |
| <caption><span>Nested Classes</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colSecond" scope="col">Interface</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static interface </code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="SqlTester.ParameterChecker.html" title="interface in org.apache.calcite.sql.test">SqlTester.ParameterChecker</a></span></code></th> |
| <td class="colLast"> |
| <div class="block">Parameter checker.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>static interface </code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="SqlTester.ResultChecker.html" title="interface in org.apache.calcite.sql.test">SqlTester.ResultChecker</a></span></code></th> |
| <td class="colLast"> |
| <div class="block">Result checker.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static interface </code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="SqlTester.TypeChecker.html" title="interface in org.apache.calcite.sql.test">SqlTester.TypeChecker</a></span></code></th> |
| <td class="colLast"> |
| <div class="block">Type checker.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>static class </code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="SqlTester.VmName.html" title="enum in org.apache.calcite.sql.test">SqlTester.VmName</a></span></code></th> |
| <td class="colLast"> |
| <div class="block">Name of a virtual machine that can potentially implement an operator.</div> |
| </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| </section> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="method.summary"> |
| <!-- --> |
| </a> |
| <h3>Method Summary</h3> |
| <table class="memberSummary"> |
| <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd"> </span></span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colSecond" scope="col">Method</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| <tr id="i0" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#check(java.lang.String,org.apache.calcite.sql.test.SqlTester.TypeChecker,java.lang.Object,double)">check</a></span>​(java.lang.String query, |
| <a href="SqlTester.TypeChecker.html" title="interface in org.apache.calcite.sql.test">SqlTester.TypeChecker</a> typeChecker, |
| java.lang.Object result, |
| double delta)</code></th> |
| <td class="colLast"> |
| <div class="block">Tests that a SQL query returns a single column with the given type.</div> |
| </td> |
| </tr> |
| <tr id="i1" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#check(java.lang.String,org.apache.calcite.sql.test.SqlTester.TypeChecker,org.apache.calcite.sql.test.SqlTester.ParameterChecker,org.apache.calcite.sql.test.SqlTester.ResultChecker)">check</a></span>​(java.lang.String query, |
| <a href="SqlTester.TypeChecker.html" title="interface in org.apache.calcite.sql.test">SqlTester.TypeChecker</a> typeChecker, |
| <a href="SqlTester.ParameterChecker.html" title="interface in org.apache.calcite.sql.test">SqlTester.ParameterChecker</a> parameterChecker, |
| <a href="SqlTester.ResultChecker.html" title="interface in org.apache.calcite.sql.test">SqlTester.ResultChecker</a> resultChecker)</code></th> |
| <td class="colLast"> |
| <div class="block">Tests that a SQL query returns a result of expected type and value.</div> |
| </td> |
| </tr> |
| <tr id="i2" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkAgg(java.lang.String,java.lang.String%5B%5D,java.lang.Object,double)">checkAgg</a></span>​(java.lang.String expr, |
| java.lang.String[] inputValues, |
| java.lang.Object result, |
| double delta)</code></th> |
| <td class="colLast"> |
| <div class="block">Checks that an aggregate expression returns the expected result.</div> |
| </td> |
| </tr> |
| <tr id="i3" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkAggWithMultipleArgs(java.lang.String,java.lang.String%5B%5D%5B%5D,java.lang.Object,double)">checkAggWithMultipleArgs</a></span>​(java.lang.String expr, |
| java.lang.String[][] inputValues, |
| java.lang.Object result, |
| double delta)</code></th> |
| <td class="colLast"> |
| <div class="block">Checks that an aggregate expression with multiple args returns the expected |
| result.</div> |
| </td> |
| </tr> |
| <tr id="i4" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkBoolean(java.lang.String,java.lang.Boolean)">checkBoolean</a></span>​(java.lang.String expression, |
| java.lang.Boolean result)</code></th> |
| <td class="colLast"> |
| <div class="block">Tests that a scalar SQL expression returns the expected boolean result.</div> |
| </td> |
| </tr> |
| <tr id="i5" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkColumnType(java.lang.String,java.lang.String)">checkColumnType</a></span>​(java.lang.String sql, |
| java.lang.String type)</code></th> |
| <td class="colLast"> |
| <div class="block">Checks that a query returns one column of an expected type.</div> |
| </td> |
| </tr> |
| <tr id="i6" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkFails(java.lang.String,java.lang.String,boolean)">checkFails</a></span>​(java.lang.String expression, |
| java.lang.String expectedError, |
| boolean runtime)</code></th> |
| <td class="colLast"> |
| <div class="block">Tests that a scalar SQL expression fails at run time.</div> |
| </td> |
| </tr> |
| <tr id="i7" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkMonotonic(java.lang.String,org.apache.calcite.sql.validate.SqlMonotonicity)">checkMonotonic</a></span>​(java.lang.String query, |
| org.apache.calcite.sql.validate.SqlMonotonicity expectedMonotonicity)</code></th> |
| <td class="colLast"> |
| <div class="block">Tests that the first column of a SQL query has a given monotonicity.</div> |
| </td> |
| </tr> |
| <tr id="i8" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkNull(java.lang.String)">checkNull</a></span>​(java.lang.String expression)</code></th> |
| <td class="colLast"> |
| <div class="block">Tests that a SQL expression returns the SQL NULL value.</div> |
| </td> |
| </tr> |
| <tr id="i9" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkQuery(java.lang.String)">checkQuery</a></span>​(java.lang.String sql)</code></th> |
| <td class="colLast"> |
| <div class="block">Tests that a SQL query succeeds at prepare time.</div> |
| </td> |
| </tr> |
| <tr id="i10" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkQueryFails(java.lang.String,java.lang.String)">checkQueryFails</a></span>​(java.lang.String sql, |
| java.lang.String expectedError)</code></th> |
| <td class="colLast"> |
| <div class="block">Tests that a SQL query fails at prepare time.</div> |
| </td> |
| </tr> |
| <tr id="i11" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkScalar(java.lang.String,java.lang.Object,java.lang.String)">checkScalar</a></span>​(java.lang.String expression, |
| java.lang.Object result, |
| java.lang.String resultType)</code></th> |
| <td class="colLast"> |
| <div class="block">Tests that a scalar SQL expression returns the expected result and the |
| expected type.</div> |
| </td> |
| </tr> |
| <tr id="i12" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkScalarApprox(java.lang.String,java.lang.String,double,double)">checkScalarApprox</a></span>​(java.lang.String expression, |
| java.lang.String expectedType, |
| double expectedResult, |
| double delta)</code></th> |
| <td class="colLast"> |
| <div class="block">Tests that a scalar SQL expression returns expected appoximate numeric |
| result.</div> |
| </td> |
| </tr> |
| <tr id="i13" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkScalarExact(java.lang.String,java.lang.String)">checkScalarExact</a></span>​(java.lang.String expression, |
| java.lang.String result)</code></th> |
| <td class="colLast"> |
| <div class="block">Tests that a scalar SQL expression returns the expected exact numeric |
| result as an integer.</div> |
| </td> |
| </tr> |
| <tr id="i14" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkScalarExact(java.lang.String,java.lang.String,java.lang.String)">checkScalarExact</a></span>​(java.lang.String expression, |
| java.lang.String expectedType, |
| java.lang.String result)</code></th> |
| <td class="colLast"> |
| <div class="block">Tests that a scalar SQL expression returns the expected exact numeric |
| result.</div> |
| </td> |
| </tr> |
| <tr id="i15" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkString(java.lang.String,java.lang.String,java.lang.String)">checkString</a></span>​(java.lang.String expression, |
| java.lang.String result, |
| java.lang.String resultType)</code></th> |
| <td class="colLast"> |
| <div class="block">Tests that a scalar SQL expression returns the expected string result.</div> |
| </td> |
| </tr> |
| <tr id="i16" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkType(java.lang.String,java.lang.String)">checkType</a></span>​(java.lang.String expression, |
| java.lang.String type)</code></th> |
| <td class="colLast"> |
| <div class="block">Tests that a SQL expression has a given type.</div> |
| </td> |
| </tr> |
| <tr id="i17" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkWinAgg(java.lang.String,java.lang.String%5B%5D,java.lang.String,java.lang.String,java.lang.Object,double)">checkWinAgg</a></span>​(java.lang.String expr, |
| java.lang.String[] inputValues, |
| java.lang.String windowSpec, |
| java.lang.String type, |
| java.lang.Object result, |
| double delta)</code></th> |
| <td class="colLast"> |
| <div class="block">Checks that a windowed aggregate expression returns the expected result.</div> |
| </td> |
| </tr> |
| <tr id="i18" class="altColor"> |
| <td class="colFirst"><code><a href="SqlTestFactory.html" title="class in org.apache.calcite.sql.test">SqlTestFactory</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getFactory()">getFactory</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i19" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setFor(org.apache.calcite.sql.SqlOperator,org.apache.calcite.sql.test.SqlTester.VmName...)">setFor</a></span>​(org.apache.calcite.sql.SqlOperator operator, |
| <a href="SqlTester.VmName.html" title="enum in org.apache.calcite.sql.test">SqlTester.VmName</a>... unimplementedVmNames)</code></th> |
| <td class="colLast"> |
| <div class="block">Declares that this test is for a given operator.</div> |
| </td> |
| </tr> |
| <tr id="i20" class="altColor"> |
| <td class="colFirst"><code><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#withCaseSensitive(boolean)">withCaseSensitive</a></span>​(boolean sensitive)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns a tester that matches identifiers by case-sensitive or |
| case-insensitive.</div> |
| </td> |
| </tr> |
| <tr id="i21" class="rowColor"> |
| <td class="colFirst"><code><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#withConformance(org.apache.calcite.sql.validate.SqlConformance)">withConformance</a></span>​(org.apache.calcite.sql.validate.SqlConformance conformance)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns a tester that tests conformance to a particular SQL language |
| version.</div> |
| </td> |
| </tr> |
| <tr id="i22" class="altColor"> |
| <td class="colFirst"><code><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#withConnectionFactory(org.apache.calcite.test.CalciteAssert.ConnectionFactory)">withConnectionFactory</a></span>​(<a href="../../test/CalciteAssert.ConnectionFactory.html" title="class in org.apache.calcite.test">CalciteAssert.ConnectionFactory</a> connectionFactory)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns a tester that gets connections from a given factory.</div> |
| </td> |
| </tr> |
| <tr id="i23" class="rowColor"> |
| <td class="colFirst"><code><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#withLex(org.apache.calcite.config.Lex)">withLex</a></span>​(org.apache.calcite.config.Lex lex)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns a tester that follows a lex policy.</div> |
| </td> |
| </tr> |
| <tr id="i24" class="altColor"> |
| <td class="colFirst"><code><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#withOperatorTable(org.apache.calcite.sql.SqlOperatorTable)">withOperatorTable</a></span>​(org.apache.calcite.sql.SqlOperatorTable operatorTable)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns a tester that uses a given operator table.</div> |
| </td> |
| </tr> |
| <tr id="i25" class="rowColor"> |
| <td class="colFirst"><code><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#withQuotedCasing(org.apache.calcite.avatica.util.Casing)">withQuotedCasing</a></span>​(org.apache.calcite.avatica.util.Casing casing)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns a tester that applies a given casing policy to quoted |
| identifiers.</div> |
| </td> |
| </tr> |
| <tr id="i26" class="altColor"> |
| <td class="colFirst"><code><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#withQuoting(org.apache.calcite.avatica.util.Quoting)">withQuoting</a></span>​(org.apache.calcite.avatica.util.Quoting quoting)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns a tester that tests a given SQL quoting style.</div> |
| </td> |
| </tr> |
| <tr id="i27" class="rowColor"> |
| <td class="colFirst"><code><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#withUnquotedCasing(org.apache.calcite.avatica.util.Casing)">withUnquotedCasing</a></span>​(org.apache.calcite.avatica.util.Casing casing)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns a tester that applies a given casing policy to unquoted |
| identifiers.</div> |
| </td> |
| </tr> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.java.lang.AutoCloseable"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from interface java.lang.AutoCloseable</h3> |
| <code>close</code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.org.apache.calcite.test.SqlValidatorTestCase.Tester"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from interface org.apache.calcite.test.<a href="../../test/SqlValidatorTestCase.Tester.html" title="interface in org.apache.calcite.test">SqlValidatorTestCase.Tester</a></h3> |
| <code><a href="../../test/SqlValidatorTestCase.Tester.html#assertExceptionIsThrown(java.lang.String,java.lang.String)">assertExceptionIsThrown</a>, <a href="../../test/SqlValidatorTestCase.Tester.html#checkCharset(java.lang.String,java.nio.charset.Charset)">checkCharset</a>, <a href="../../test/SqlValidatorTestCase.Tester.html#checkCollation(java.lang.String,java.lang.String,org.apache.calcite.sql.SqlCollation.Coercibility)">checkCollation</a>, <a href="../../test/SqlValidatorTestCase.Tester.html#checkFieldOrigin(java.lang.String,java.lang.String)">checkFieldOrigin</a>, <a href="../../test/SqlValidatorTestCase.Tester.html#checkIntervalConv(java.lang.String,java.lang.String)">checkIntervalConv</a>, <a href="../../test/SqlValidatorTestCase.Tester.html#checkResultType(java.lang.String,java.lang.String)">checkResultType</a>, <a href="../../test/SqlValidatorTestCase.Tester.html#checkRewrite(org.apache.calcite.sql.validate.SqlValidator,java.lang.String,java.lang.String)">checkRewrite</a>, <a href="../../test/SqlValidatorTestCase.Tester.html#getColumnType(java.lang.String)">getColumnType</a>, <a href="../../test/SqlValidatorTestCase.Tester.html#getConformance()">getConformance</a>, <a href="../../test/SqlValidatorTestCase.Tester.html#getMonotonicity(java.lang.String)">getMonotonicity</a>, <a href="../../test/SqlValidatorTestCase.Tester.html#getResultType(java.lang.String)">getResultType</a>, <a href="../../test/SqlValidatorTestCase.Tester.html#getValidator()">getValidator</a>, <a href="../../test/SqlValidatorTestCase.Tester.html#parseAndValidate(org.apache.calcite.sql.validate.SqlValidator,java.lang.String)">parseAndValidate</a>, <a href="../../test/SqlValidatorTestCase.Tester.html#parseQuery(java.lang.String)">parseQuery</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| </li> |
| </ul> |
| </div> |
| <div class="details"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ============ METHOD DETAIL ========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="method.detail"> |
| <!-- --> |
| </a> |
| <h3>Method Detail</h3> |
| <a id="getFactory()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getFactory</h4> |
| <pre class="methodSignature"><a href="SqlTestFactory.html" title="class in org.apache.calcite.sql.test">SqlTestFactory</a> getFactory()</pre> |
| </li> |
| </ul> |
| <a id="withQuoting(org.apache.calcite.avatica.util.Quoting)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>withQuoting</h4> |
| <pre class="methodSignature"><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a> withQuoting​(org.apache.calcite.avatica.util.Quoting quoting)</pre> |
| <div class="block">Returns a tester that tests a given SQL quoting style.</div> |
| </li> |
| </ul> |
| <a id="withQuotedCasing(org.apache.calcite.avatica.util.Casing)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>withQuotedCasing</h4> |
| <pre class="methodSignature"><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a> withQuotedCasing​(org.apache.calcite.avatica.util.Casing casing)</pre> |
| <div class="block">Returns a tester that applies a given casing policy to quoted |
| identifiers.</div> |
| </li> |
| </ul> |
| <a id="withUnquotedCasing(org.apache.calcite.avatica.util.Casing)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>withUnquotedCasing</h4> |
| <pre class="methodSignature"><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a> withUnquotedCasing​(org.apache.calcite.avatica.util.Casing casing)</pre> |
| <div class="block">Returns a tester that applies a given casing policy to unquoted |
| identifiers.</div> |
| </li> |
| </ul> |
| <a id="withCaseSensitive(boolean)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>withCaseSensitive</h4> |
| <pre class="methodSignature"><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a> withCaseSensitive​(boolean sensitive)</pre> |
| <div class="block">Returns a tester that matches identifiers by case-sensitive or |
| case-insensitive.</div> |
| </li> |
| </ul> |
| <a id="withLex(org.apache.calcite.config.Lex)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>withLex</h4> |
| <pre class="methodSignature"><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a> withLex​(org.apache.calcite.config.Lex lex)</pre> |
| <div class="block">Returns a tester that follows a lex policy.</div> |
| </li> |
| </ul> |
| <a id="withConformance(org.apache.calcite.sql.validate.SqlConformance)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>withConformance</h4> |
| <pre class="methodSignature"><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a> withConformance​(org.apache.calcite.sql.validate.SqlConformance conformance)</pre> |
| <div class="block">Returns a tester that tests conformance to a particular SQL language |
| version.</div> |
| </li> |
| </ul> |
| <a id="withConnectionFactory(org.apache.calcite.test.CalciteAssert.ConnectionFactory)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>withConnectionFactory</h4> |
| <pre class="methodSignature"><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a> withConnectionFactory​(<a href="../../test/CalciteAssert.ConnectionFactory.html" title="class in org.apache.calcite.test">CalciteAssert.ConnectionFactory</a> connectionFactory)</pre> |
| <div class="block">Returns a tester that gets connections from a given factory.</div> |
| </li> |
| </ul> |
| <a id="withOperatorTable(org.apache.calcite.sql.SqlOperatorTable)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>withOperatorTable</h4> |
| <pre class="methodSignature"><a href="SqlTester.html" title="interface in org.apache.calcite.sql.test">SqlTester</a> withOperatorTable​(org.apache.calcite.sql.SqlOperatorTable operatorTable)</pre> |
| <div class="block">Returns a tester that uses a given operator table.</div> |
| </li> |
| </ul> |
| <a id="checkScalar(java.lang.String,java.lang.Object,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkScalar</h4> |
| <pre class="methodSignature">void checkScalar​(java.lang.String expression, |
| java.lang.Object result, |
| java.lang.String resultType)</pre> |
| <div class="block">Tests that a scalar SQL expression returns the expected result and the |
| expected type. For example, |
| |
| <blockquote> |
| <pre>checkScalar("1.1 + 2.9", "4.0", "DECIMAL(2, 1) NOT NULL");</pre> |
| </blockquote></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>expression</code> - Scalar expression</dd> |
| <dd><code>result</code> - Expected result</dd> |
| <dd><code>resultType</code> - Expected result type</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkScalarExact(java.lang.String,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkScalarExact</h4> |
| <pre class="methodSignature">void checkScalarExact​(java.lang.String expression, |
| java.lang.String result)</pre> |
| <div class="block">Tests that a scalar SQL expression returns the expected exact numeric |
| result as an integer. For example, |
| |
| <blockquote> |
| <pre>checkScalarExact("1 + 2", "3");</pre> |
| </blockquote></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>expression</code> - Scalar expression</dd> |
| <dd><code>result</code> - Expected result</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkScalarExact(java.lang.String,java.lang.String,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkScalarExact</h4> |
| <pre class="methodSignature">void checkScalarExact​(java.lang.String expression, |
| java.lang.String expectedType, |
| java.lang.String result)</pre> |
| <div class="block">Tests that a scalar SQL expression returns the expected exact numeric |
| result. For example, |
| |
| <blockquote> |
| <pre>checkScalarExact("1 + 2", "3");</pre> |
| </blockquote></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>expression</code> - Scalar expression</dd> |
| <dd><code>expectedType</code> - Type we expect the result to have, including |
| nullability, precision and scale, for example |
| <code>DECIMAL(2, 1) NOT NULL</code>.</dd> |
| <dd><code>result</code> - Expected result</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkScalarApprox(java.lang.String,java.lang.String,double,double)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkScalarApprox</h4> |
| <pre class="methodSignature">void checkScalarApprox​(java.lang.String expression, |
| java.lang.String expectedType, |
| double expectedResult, |
| double delta)</pre> |
| <div class="block">Tests that a scalar SQL expression returns expected appoximate numeric |
| result. For example, |
| |
| <blockquote> |
| <pre>checkScalarApprox("1.0 + 2.1", "3.1");</pre> |
| </blockquote></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>expression</code> - Scalar expression</dd> |
| <dd><code>expectedType</code> - Type we expect the result to have, including |
| nullability, precision and scale, for example |
| <code>DECIMAL(2, 1) NOT NULL</code>.</dd> |
| <dd><code>expectedResult</code> - Expected result</dd> |
| <dd><code>delta</code> - Allowed margin of error between expected and actual |
| result</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkBoolean(java.lang.String,java.lang.Boolean)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkBoolean</h4> |
| <pre class="methodSignature">void checkBoolean​(java.lang.String expression, |
| java.lang.Boolean result)</pre> |
| <div class="block">Tests that a scalar SQL expression returns the expected boolean result. |
| For example, |
| |
| <blockquote> |
| <pre>checkScalarExact("TRUE AND FALSE", Boolean.TRUE);</pre> |
| </blockquote> |
| |
| <p>The expected result can be null: |
| |
| <blockquote> |
| <pre>checkScalarExact("NOT UNKNOWN", null);</pre> |
| </blockquote></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>expression</code> - Scalar expression</dd> |
| <dd><code>result</code> - Expected result (null signifies NULL).</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkString(java.lang.String,java.lang.String,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkString</h4> |
| <pre class="methodSignature">void checkString​(java.lang.String expression, |
| java.lang.String result, |
| java.lang.String resultType)</pre> |
| <div class="block">Tests that a scalar SQL expression returns the expected string result. |
| For example, |
| |
| <blockquote> |
| <pre>checkScalarExact("'ab' || 'c'", "abc");</pre> |
| </blockquote></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>expression</code> - Scalar expression</dd> |
| <dd><code>result</code> - Expected result</dd> |
| <dd><code>resultType</code> - Expected result type</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkNull(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkNull</h4> |
| <pre class="methodSignature">void checkNull​(java.lang.String expression)</pre> |
| <div class="block">Tests that a SQL expression returns the SQL NULL value. For example, |
| |
| <blockquote> |
| <pre>checkNull("CHAR_LENGTH(CAST(NULL AS VARCHAR(3))");</pre> |
| </blockquote></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>expression</code> - Scalar expression</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkType(java.lang.String,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkType</h4> |
| <pre class="methodSignature">void checkType​(java.lang.String expression, |
| java.lang.String type)</pre> |
| <div class="block">Tests that a SQL expression has a given type. For example, |
| |
| <blockquote> |
| <code>checkType("SUBSTR('hello' FROM 1 FOR 3)", |
| "VARCHAR(3) NOT NULL");</code> |
| </blockquote> |
| |
| <p>This method checks length/precision, scale, and whether the type allows |
| NULL values, so is more precise than the type-checking done by methods |
| such as <a href="#checkScalarExact(java.lang.String,java.lang.String)"><code>checkScalarExact(java.lang.String, java.lang.String)</code></a>.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>expression</code> - Scalar expression</dd> |
| <dd><code>type</code> - Type string</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkColumnType(java.lang.String,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkColumnType</h4> |
| <pre class="methodSignature">void checkColumnType​(java.lang.String sql, |
| java.lang.String type)</pre> |
| <div class="block">Checks that a query returns one column of an expected type. For example, |
| <code>checkType("VALUES (1 + 2)", "INTEGER NOT NULL")</code>.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../test/SqlValidatorTestCase.Tester.html#checkColumnType(java.lang.String,java.lang.String)">checkColumnType</a></code> in interface <code><a href="../../test/SqlValidatorTestCase.Tester.html" title="interface in org.apache.calcite.test">SqlValidatorTestCase.Tester</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>sql</code> - Query expression</dd> |
| <dd><code>type</code> - Type string</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="check(java.lang.String,org.apache.calcite.sql.test.SqlTester.TypeChecker,java.lang.Object,double)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>check</h4> |
| <pre class="methodSignature">void check​(java.lang.String query, |
| <a href="SqlTester.TypeChecker.html" title="interface in org.apache.calcite.sql.test">SqlTester.TypeChecker</a> typeChecker, |
| java.lang.Object result, |
| double delta)</pre> |
| <div class="block">Tests that a SQL query returns a single column with the given type. For |
| example, |
| |
| <blockquote> |
| <pre>check("VALUES (1 + 2)", "3", SqlTypeName.Integer);</pre> |
| </blockquote> |
| |
| <p>If <code>result</code> is null, the expression must yield the SQL NULL |
| value. If <code>result</code> is a <code>Pattern</code>, the |
| result must match that pattern.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>query</code> - SQL query</dd> |
| <dd><code>typeChecker</code> - Checks whether the result is the expected type; must |
| not be null</dd> |
| <dd><code>result</code> - Expected result</dd> |
| <dd><code>delta</code> - The acceptable tolerance between the expected and actual</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="check(java.lang.String,org.apache.calcite.sql.test.SqlTester.TypeChecker,org.apache.calcite.sql.test.SqlTester.ParameterChecker,org.apache.calcite.sql.test.SqlTester.ResultChecker)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>check</h4> |
| <pre class="methodSignature">void check​(java.lang.String query, |
| <a href="SqlTester.TypeChecker.html" title="interface in org.apache.calcite.sql.test">SqlTester.TypeChecker</a> typeChecker, |
| <a href="SqlTester.ParameterChecker.html" title="interface in org.apache.calcite.sql.test">SqlTester.ParameterChecker</a> parameterChecker, |
| <a href="SqlTester.ResultChecker.html" title="interface in org.apache.calcite.sql.test">SqlTester.ResultChecker</a> resultChecker)</pre> |
| <div class="block">Tests that a SQL query returns a result of expected type and value. |
| Checking of type and value are abstracted using <a href="SqlTester.TypeChecker.html" title="interface in org.apache.calcite.sql.test"><code>SqlTester.TypeChecker</code></a> |
| and <a href="SqlTester.ResultChecker.html" title="interface in org.apache.calcite.sql.test"><code>SqlTester.ResultChecker</code></a> functors.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>query</code> - SQL query</dd> |
| <dd><code>typeChecker</code> - Checks whether the result is the expected type; must |
| not be null</dd> |
| <dd><code>parameterChecker</code> - Checks whether the parameters are of expected |
| types</dd> |
| <dd><code>resultChecker</code> - Checks whether the result has the expected value; |
| must not be null</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkMonotonic(java.lang.String,org.apache.calcite.sql.validate.SqlMonotonicity)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkMonotonic</h4> |
| <pre class="methodSignature">void checkMonotonic​(java.lang.String query, |
| org.apache.calcite.sql.validate.SqlMonotonicity expectedMonotonicity)</pre> |
| <div class="block">Tests that the first column of a SQL query has a given monotonicity.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>expectedMonotonicity</code> - Expected monotonicity</dd> |
| <dd><code>query</code> - SQL query</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="setFor(org.apache.calcite.sql.SqlOperator,org.apache.calcite.sql.test.SqlTester.VmName...)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setFor</h4> |
| <pre class="methodSignature">void setFor​(org.apache.calcite.sql.SqlOperator operator, |
| <a href="SqlTester.VmName.html" title="enum in org.apache.calcite.sql.test">SqlTester.VmName</a>... unimplementedVmNames)</pre> |
| <div class="block">Declares that this test is for a given operator. So we can check that all |
| operators are tested.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>operator</code> - Operator</dd> |
| <dd><code>unimplementedVmNames</code> - Names of virtual machines for which this</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkAgg(java.lang.String,java.lang.String[],java.lang.Object,double)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkAgg</h4> |
| <pre class="methodSignature">void checkAgg​(java.lang.String expr, |
| java.lang.String[] inputValues, |
| java.lang.Object result, |
| double delta)</pre> |
| <div class="block">Checks that an aggregate expression returns the expected result. |
| |
| <p>For example, <code>checkAgg("AVG(DISTINCT x)", new String[] {"2", "3", |
| null, "3" }, new Double(2.5), 0);</code></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>expr</code> - Aggregate expression, e.g. <code>SUM(DISTINCT x)</code></dd> |
| <dd><code>inputValues</code> - Array of input values, e.g. <code>["1", null, |
| "2"]</code>.</dd> |
| <dd><code>result</code> - Expected result</dd> |
| <dd><code>delta</code> - Allowable variance from expected result</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkAggWithMultipleArgs(java.lang.String,java.lang.String[][],java.lang.Object,double)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkAggWithMultipleArgs</h4> |
| <pre class="methodSignature">void checkAggWithMultipleArgs​(java.lang.String expr, |
| java.lang.String[][] inputValues, |
| java.lang.Object result, |
| double delta)</pre> |
| <div class="block">Checks that an aggregate expression with multiple args returns the expected |
| result.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>expr</code> - Aggregate expression, e.g. <code>AGG_FUNC(x, x2, x3)</code></dd> |
| <dd><code>inputValues</code> - Nested array of input values, e.g. <code>[ |
| ["1", null, "2"] |
| ["3", "4", null] |
| ]</code>.</dd> |
| <dd><code>result</code> - Expected result</dd> |
| <dd><code>delta</code> - Allowable variance from expected result</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkWinAgg(java.lang.String,java.lang.String[],java.lang.String,java.lang.String,java.lang.Object,double)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkWinAgg</h4> |
| <pre class="methodSignature">void checkWinAgg​(java.lang.String expr, |
| java.lang.String[] inputValues, |
| java.lang.String windowSpec, |
| java.lang.String type, |
| java.lang.Object result, |
| double delta)</pre> |
| <div class="block">Checks that a windowed aggregate expression returns the expected result. |
| |
| <p>For example, <code>checkWinAgg("FIRST_VALUE(x)", new String[] {"2", |
| "3", null, "3" }, "INTEGER NOT NULL", 2, 0d);</code></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>expr</code> - Aggregate expression, e.g. <code>SUM(DISTINCT x)</code></dd> |
| <dd><code>inputValues</code> - Array of input values, e.g. <code>["1", null, |
| "2"]</code>.</dd> |
| <dd><code>type</code> - Expected result type</dd> |
| <dd><code>result</code> - Expected result</dd> |
| <dd><code>delta</code> - Allowable variance from expected result</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkFails(java.lang.String,java.lang.String,boolean)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkFails</h4> |
| <pre class="methodSignature">void checkFails​(java.lang.String expression, |
| java.lang.String expectedError, |
| boolean runtime)</pre> |
| <div class="block">Tests that a scalar SQL expression fails at run time.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>expression</code> - SQL scalar expression</dd> |
| <dd><code>expectedError</code> - Pattern for expected error. If !runtime, must |
| include an error location.</dd> |
| <dd><code>runtime</code> - If true, must fail at runtime; if false, must fail at |
| validate time</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkQueryFails(java.lang.String,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkQueryFails</h4> |
| <pre class="methodSignature">void checkQueryFails​(java.lang.String sql, |
| java.lang.String expectedError)</pre> |
| <div class="block">Tests that a SQL query fails at prepare time.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>sql</code> - SQL query</dd> |
| <dd><code>expectedError</code> - Pattern for expected error. Must |
| include an error location.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkQuery(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>checkQuery</h4> |
| <pre class="methodSignature">void checkQuery​(java.lang.String sql)</pre> |
| <div class="block">Tests that a SQL query succeeds at prepare time.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>sql</code> - SQL query</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </main> |
| <!-- ========= END OF CLASS DATA ========= --> |
| <footer role="contentinfo"> |
| <nav role="navigation"> |
| <!-- ======= START OF BOTTOM NAVBAR ====== --> |
| <div class="bottomNav"><a id="navbar.bottom"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> |
| <a id="navbar.bottom.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../../index.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/SqlTester.html">Use</a></li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../../../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../../../../index-all.html">Index</a></li> |
| <li><a href="../../../../../help-doc.html">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList" id="allclasses_navbar_bottom"> |
| <li><a href="../../../../../allclasses.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_bottom"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li><a href="#nested.class.summary">Nested</a> | </li> |
| <li>Field | </li> |
| <li>Constr | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li>Constr | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a id="skip.navbar.bottom"> |
| <!-- --> |
| </a></div> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| </nav> |
| <p class="legalCopy"><small>Copyright © 2012–2019 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p> |
| </footer> |
| </body> |
| </html> |