Class SqlJsonFunctionsTest


  • public class SqlJsonFunctionsTest
    extends java.lang.Object
    Unit test for the methods in SqlFunctions that implement JSON processing functions.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private void assertDejsonize​(java.lang.String input, org.hamcrest.Matcher<java.lang.Object> matcher)  
      private void assertDejsonizeFailed​(java.lang.String input, org.hamcrest.Matcher<? super java.lang.Throwable> matcher)  
      private void assertFailed​(java.lang.String invocationDesc, java.util.function.Supplier<?> supplier, org.hamcrest.Matcher<? super java.lang.Throwable> matcher)  
      private void assertIsJsonArray​(java.lang.String input, org.hamcrest.Matcher<? super java.lang.Boolean> matcher)  
      private void assertIsJsonObject​(java.lang.String input, org.hamcrest.Matcher<? super java.lang.Boolean> matcher)  
      private void assertIsJsonScalar​(java.lang.String input, org.hamcrest.Matcher<? super java.lang.Boolean> matcher)  
      private void assertIsJsonValue​(java.lang.String input, org.hamcrest.Matcher<? super java.lang.Boolean> matcher)  
      private void assertJsonApiCommonSyntax​(java.lang.Object input, java.lang.String pathSpec, org.hamcrest.Matcher<? super org.apache.calcite.runtime.SqlFunctions.PathContext> matcher)  
      private void assertJsonArray​(org.hamcrest.Matcher<? super java.lang.String> matcher, org.apache.calcite.sql.SqlJsonConstructorNullClause nullClause, java.lang.Object... elements)  
      private void assertJsonArrayAggAdd​(java.util.List list, java.lang.Object element, org.apache.calcite.sql.SqlJsonConstructorNullClause nullClause, org.hamcrest.Matcher<? super java.util.List> matcher)  
      private void assertJsonExists​(java.lang.Object input, org.apache.calcite.sql.SqlJsonExistsErrorBehavior errorBehavior, org.hamcrest.Matcher<? super java.lang.Boolean> matcher)  
      private void assertJsonExistsFailed​(java.lang.Object input, org.apache.calcite.sql.SqlJsonExistsErrorBehavior errorBehavior, org.hamcrest.Matcher<? super java.lang.Throwable> matcher)  
      private void assertJsonize​(java.lang.Object input, org.hamcrest.Matcher<? super java.lang.String> matcher)  
      private void assertJsonObject​(org.hamcrest.Matcher<? super java.lang.String> matcher, org.apache.calcite.sql.SqlJsonConstructorNullClause nullClause, java.lang.Object... kvs)  
      private void assertJsonObjectAggAdd​(java.util.Map map, java.lang.String k, java.lang.Object v, org.apache.calcite.sql.SqlJsonConstructorNullClause nullClause, org.hamcrest.Matcher<? super java.util.Map> matcher)  
      private void assertJsonQuery​(java.lang.Object input, org.apache.calcite.sql.SqlJsonQueryWrapperBehavior wrapperBehavior, org.apache.calcite.sql.SqlJsonQueryEmptyOrErrorBehavior emptyBehavior, org.apache.calcite.sql.SqlJsonQueryEmptyOrErrorBehavior errorBehavior, org.hamcrest.Matcher<? super java.lang.String> matcher)  
      private void assertJsonQueryFailed​(java.lang.Object input, org.apache.calcite.sql.SqlJsonQueryWrapperBehavior wrapperBehavior, org.apache.calcite.sql.SqlJsonQueryEmptyOrErrorBehavior emptyBehavior, org.apache.calcite.sql.SqlJsonQueryEmptyOrErrorBehavior errorBehavior, org.hamcrest.Matcher<? super java.lang.Throwable> matcher)  
      private void assertJsonStructuredValueExpression​(java.lang.Object input, org.hamcrest.Matcher<java.lang.Object> matcher)  
      private void assertJsonValueAny​(java.lang.Object input, org.apache.calcite.sql.SqlJsonValueEmptyOrErrorBehavior emptyBehavior, java.lang.Object defaultValueOnEmpty, org.apache.calcite.sql.SqlJsonValueEmptyOrErrorBehavior errorBehavior, java.lang.Object defaultValueOnError, org.hamcrest.Matcher<java.lang.Object> matcher)  
      private void assertJsonValueAnyFailed​(java.lang.Object input, org.apache.calcite.sql.SqlJsonValueEmptyOrErrorBehavior emptyBehavior, java.lang.Object defaultValueOnEmpty, org.apache.calcite.sql.SqlJsonValueEmptyOrErrorBehavior errorBehavior, java.lang.Object defaultValueOnError, org.hamcrest.Matcher<? super java.lang.Throwable> matcher)  
      private void assertJsonValueExpression​(java.lang.String input, org.hamcrest.Matcher<java.lang.Object> matcher)  
      private org.hamcrest.BaseMatcher<org.apache.calcite.runtime.SqlFunctions.PathContext> contextMatches​(org.apache.calcite.runtime.SqlFunctions.PathContext expected)  
      private org.hamcrest.Matcher<? super java.lang.Throwable> errorMatches​(java.lang.Throwable expected)  
      private java.lang.String invocationDesc​(java.lang.String methodName, java.lang.Object... args)  
      void testDejsonize()  
      void testJsonApiCommonSyntax()  
      void testJsonArray()  
      void testJsonArrayAggAdd()  
      void testJsonExists()  
      void testJsonize()  
      void testJsonObject()  
      void testJsonObjectAggAdd()  
      void testJsonPredicate()  
      void testJsonQuery()  
      void testJsonStructuredValueExpression()  
      void testJsonValueAny()  
      void testJsonValueExpression()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • INVOC_DESC_JSON_VALUE_EXPRESSION

        public static final java.lang.String INVOC_DESC_JSON_VALUE_EXPRESSION
        See Also:
        Constant Field Values
      • INVOC_DESC_JSON_STRUCTURED_VALUE_EXPRESSION

        public static final java.lang.String INVOC_DESC_JSON_STRUCTURED_VALUE_EXPRESSION
        See Also:
        Constant Field Values
      • INVOC_DESC_JSON_API_COMMON_SYNTAX

        public static final java.lang.String INVOC_DESC_JSON_API_COMMON_SYNTAX
        See Also:
        Constant Field Values
      • INVOC_DESC_JSON_EXISTS

        public static final java.lang.String INVOC_DESC_JSON_EXISTS
        See Also:
        Constant Field Values
      • INVOC_DESC_JSON_VALUE_ANY

        public static final java.lang.String INVOC_DESC_JSON_VALUE_ANY
        See Also:
        Constant Field Values
      • INVOC_DESC_JSON_QUERY

        public static final java.lang.String INVOC_DESC_JSON_QUERY
        See Also:
        Constant Field Values
      • INVOC_DESC_JSONIZE

        public static final java.lang.String INVOC_DESC_JSONIZE
        See Also:
        Constant Field Values
      • INVOC_DESC_DEJSONIZE

        public static final java.lang.String INVOC_DESC_DEJSONIZE
        See Also:
        Constant Field Values
      • INVOC_DESC_JSON_OBJECT

        public static final java.lang.String INVOC_DESC_JSON_OBJECT
        See Also:
        Constant Field Values
      • INVOC_DESC_JSON_OBJECT_AGG_ADD

        public static final java.lang.String INVOC_DESC_JSON_OBJECT_AGG_ADD
        See Also:
        Constant Field Values
      • INVOC_DESC_JSON_ARRAY

        public static final java.lang.String INVOC_DESC_JSON_ARRAY
        See Also:
        Constant Field Values
      • INVOC_DESC_JSON_ARRAY_AGG_ADD

        public static final java.lang.String INVOC_DESC_JSON_ARRAY_AGG_ADD
        See Also:
        Constant Field Values
      • INVOC_DESC_IS_JSON_VALUE

        public static final java.lang.String INVOC_DESC_IS_JSON_VALUE
        See Also:
        Constant Field Values
      • INVOC_DESC_IS_JSON_SCALAR

        public static final java.lang.String INVOC_DESC_IS_JSON_SCALAR
        See Also:
        Constant Field Values
      • INVOC_DESC_IS_JSON_ARRAY

        public static final java.lang.String INVOC_DESC_IS_JSON_ARRAY
        See Also:
        Constant Field Values
      • INVOC_DESC_IS_JSON_OBJECT

        public static final java.lang.String INVOC_DESC_IS_JSON_OBJECT
        See Also:
        Constant Field Values
    • Constructor Detail

      • SqlJsonFunctionsTest

        public SqlJsonFunctionsTest()
    • Method Detail

      • testJsonValueExpression

        public void testJsonValueExpression()
      • testJsonStructuredValueExpression

        public void testJsonStructuredValueExpression()
      • testJsonApiCommonSyntax

        public void testJsonApiCommonSyntax()
      • testJsonExists

        public void testJsonExists()
      • testJsonValueAny

        public void testJsonValueAny()
      • testJsonQuery

        public void testJsonQuery()
      • testJsonize

        public void testJsonize()
      • testDejsonize

        public void testDejsonize()
      • testJsonObject

        public void testJsonObject()
      • testJsonObjectAggAdd

        public void testJsonObjectAggAdd()
      • testJsonArray

        public void testJsonArray()
      • testJsonArrayAggAdd

        public void testJsonArrayAggAdd()
      • testJsonPredicate

        public void testJsonPredicate()
      • assertJsonValueExpression

        private void assertJsonValueExpression​(java.lang.String input,
                                               org.hamcrest.Matcher<java.lang.Object> matcher)
      • assertJsonStructuredValueExpression

        private void assertJsonStructuredValueExpression​(java.lang.Object input,
                                                         org.hamcrest.Matcher<java.lang.Object> matcher)
      • assertJsonApiCommonSyntax

        private void assertJsonApiCommonSyntax​(java.lang.Object input,
                                               java.lang.String pathSpec,
                                               org.hamcrest.Matcher<? super org.apache.calcite.runtime.SqlFunctions.PathContext> matcher)
      • assertJsonExists

        private void assertJsonExists​(java.lang.Object input,
                                      org.apache.calcite.sql.SqlJsonExistsErrorBehavior errorBehavior,
                                      org.hamcrest.Matcher<? super java.lang.Boolean> matcher)
      • assertJsonExistsFailed

        private void assertJsonExistsFailed​(java.lang.Object input,
                                            org.apache.calcite.sql.SqlJsonExistsErrorBehavior errorBehavior,
                                            org.hamcrest.Matcher<? super java.lang.Throwable> matcher)
      • assertJsonValueAny

        private void assertJsonValueAny​(java.lang.Object input,
                                        org.apache.calcite.sql.SqlJsonValueEmptyOrErrorBehavior emptyBehavior,
                                        java.lang.Object defaultValueOnEmpty,
                                        org.apache.calcite.sql.SqlJsonValueEmptyOrErrorBehavior errorBehavior,
                                        java.lang.Object defaultValueOnError,
                                        org.hamcrest.Matcher<java.lang.Object> matcher)
      • assertJsonValueAnyFailed

        private void assertJsonValueAnyFailed​(java.lang.Object input,
                                              org.apache.calcite.sql.SqlJsonValueEmptyOrErrorBehavior emptyBehavior,
                                              java.lang.Object defaultValueOnEmpty,
                                              org.apache.calcite.sql.SqlJsonValueEmptyOrErrorBehavior errorBehavior,
                                              java.lang.Object defaultValueOnError,
                                              org.hamcrest.Matcher<? super java.lang.Throwable> matcher)
      • assertJsonQuery

        private void assertJsonQuery​(java.lang.Object input,
                                     org.apache.calcite.sql.SqlJsonQueryWrapperBehavior wrapperBehavior,
                                     org.apache.calcite.sql.SqlJsonQueryEmptyOrErrorBehavior emptyBehavior,
                                     org.apache.calcite.sql.SqlJsonQueryEmptyOrErrorBehavior errorBehavior,
                                     org.hamcrest.Matcher<? super java.lang.String> matcher)
      • assertJsonQueryFailed

        private void assertJsonQueryFailed​(java.lang.Object input,
                                           org.apache.calcite.sql.SqlJsonQueryWrapperBehavior wrapperBehavior,
                                           org.apache.calcite.sql.SqlJsonQueryEmptyOrErrorBehavior emptyBehavior,
                                           org.apache.calcite.sql.SqlJsonQueryEmptyOrErrorBehavior errorBehavior,
                                           org.hamcrest.Matcher<? super java.lang.Throwable> matcher)
      • assertJsonize

        private void assertJsonize​(java.lang.Object input,
                                   org.hamcrest.Matcher<? super java.lang.String> matcher)
      • assertDejsonize

        private void assertDejsonize​(java.lang.String input,
                                     org.hamcrest.Matcher<java.lang.Object> matcher)
      • assertDejsonizeFailed

        private void assertDejsonizeFailed​(java.lang.String input,
                                           org.hamcrest.Matcher<? super java.lang.Throwable> matcher)
      • assertJsonObject

        private void assertJsonObject​(org.hamcrest.Matcher<? super java.lang.String> matcher,
                                      org.apache.calcite.sql.SqlJsonConstructorNullClause nullClause,
                                      java.lang.Object... kvs)
      • assertJsonObjectAggAdd

        private void assertJsonObjectAggAdd​(java.util.Map map,
                                            java.lang.String k,
                                            java.lang.Object v,
                                            org.apache.calcite.sql.SqlJsonConstructorNullClause nullClause,
                                            org.hamcrest.Matcher<? super java.util.Map> matcher)
      • assertJsonArray

        private void assertJsonArray​(org.hamcrest.Matcher<? super java.lang.String> matcher,
                                     org.apache.calcite.sql.SqlJsonConstructorNullClause nullClause,
                                     java.lang.Object... elements)
      • assertJsonArrayAggAdd

        private void assertJsonArrayAggAdd​(java.util.List list,
                                           java.lang.Object element,
                                           org.apache.calcite.sql.SqlJsonConstructorNullClause nullClause,
                                           org.hamcrest.Matcher<? super java.util.List> matcher)
      • assertIsJsonValue

        private void assertIsJsonValue​(java.lang.String input,
                                       org.hamcrest.Matcher<? super java.lang.Boolean> matcher)
      • assertIsJsonScalar

        private void assertIsJsonScalar​(java.lang.String input,
                                        org.hamcrest.Matcher<? super java.lang.Boolean> matcher)
      • assertIsJsonArray

        private void assertIsJsonArray​(java.lang.String input,
                                       org.hamcrest.Matcher<? super java.lang.Boolean> matcher)
      • assertIsJsonObject

        private void assertIsJsonObject​(java.lang.String input,
                                        org.hamcrest.Matcher<? super java.lang.Boolean> matcher)
      • invocationDesc

        private java.lang.String invocationDesc​(java.lang.String methodName,
                                                java.lang.Object... args)
      • assertFailed

        private void assertFailed​(java.lang.String invocationDesc,
                                  java.util.function.Supplier<?> supplier,
                                  org.hamcrest.Matcher<? super java.lang.Throwable> matcher)
      • errorMatches

        private org.hamcrest.Matcher<? super java.lang.Throwable> errorMatches​(java.lang.Throwable expected)
      • contextMatches

        @Nonnull
        private org.hamcrest.BaseMatcher<org.apache.calcite.runtime.SqlFunctions.PathContext> contextMatches​(org.apache.calcite.runtime.SqlFunctions.PathContext expected)