Class FilterTest


  • public class FilterTest
    extends BatchTestCase
    Tests for Filter and native Filters.
    Since:
    April 28, 2009
    Author:
    Rushan Chen
    • Constructor Detail

      • FilterTest

        public FilterTest()
      • FilterTest

        public FilterTest​(String name)
    • Method Detail

      • testInFilterSimple

        public void testInFilterSimple()
                                throws Exception
        Throws:
        Exception
      • testNotInFilterSimple

        public void testNotInFilterSimple()
                                   throws Exception
        Throws:
        Exception
      • testIsFilterSimple

        public void testIsFilterSimple()
                                throws Exception
        Throws:
        Exception
      • testNotIsFilterSimple

        public void testNotIsFilterSimple()
                                   throws Exception
        Throws:
        Exception
      • testMixedInIsFilters

        public void testMixedInIsFilters()
                                  throws Exception
        Throws:
        Exception
      • testInFilterNonNative

        public void testInFilterNonNative()
                                   throws Exception
        Here the filter is above (rather than as inputs to) the NECJ. These types of filters are currently not natively evaluated.

        To expand on this case, RolapNativeFilter needs to be improved so it knows how to represent the dimension filter constraint. Currently the FilterConstraint is only used for filters on measures.

        Throws:
        Exception
      • testTopCountOverInFilter

        public void testTopCountOverInFilter()
                                      throws Exception
        Throws:
        Exception
      • testNotInFilterKeepNullMember

        public void testNotInFilterKeepNullMember()
                                           throws Exception
        Test that if Null member is not explicitly excluded, then the native filter SQL should not filter out null members.
        Throws:
        Exception
      • testNotInFilterExcludeNullMember

        public void testNotInFilterExcludeNullMember()
                                              throws Exception
        Test that if Null member is explicitly excluded, then the native filter SQL should filter out null members.
        Throws:
        Exception
      • testNotInMultiLevelMemberConstraintNonNullParent

        public void testNotInMultiLevelMemberConstraintNonNullParent()
        Test that null members are included when the filter excludes members that contain multiple levels, but none being null.
      • testNotInMultiLevelMemberConstraintNonNullSameParent

        public void testNotInMultiLevelMemberConstraintNonNullSameParent()
        Test that null members are included when the filter excludes members that contain multiple levels, but none being null. The members have the same parent.
      • testNotInMultiLevelMemberConstraintMixedNullNonNullParent

        public void testNotInMultiLevelMemberConstraintMixedNullNonNullParent()
        Test that null members are included when the filter explicitly excludes certain members that contain nulls. The members span multiple levels.
      • testNotInMultiLevelMemberConstraintSingleNullParent

        public void testNotInMultiLevelMemberConstraintSingleNullParent()
        Test that null members are included when the filter explicitly excludes a single member that has a null. The members span multiple levels.
      • testCachedNativeSetUsingFilters

        public void testCachedNativeSetUsingFilters()
                                             throws Exception
        Throws:
        Exception
      • testNativeFilter

        public void testNativeFilter()
      • testCmNativeFilter

        public void testCmNativeFilter()
        Executes a Filter() whose condition contains a calculated member.
      • testNonNativeFilterWithNullMeasure

        public void testNonNativeFilterWithNullMeasure()
      • testNativeFilterWithNullMeasure

        public void testNativeFilterWithNullMeasure()
      • testNonNativeFilterWithCalcMember

        public void testNonNativeFilterWithCalcMember()
      • testNativeFilterNonEmpty

        public void testNativeFilterNonEmpty()
        Verify that filter with Not IsEmpty(storedMeasure) can be natively evaluated.
      • testBug779

        public void testBug779()
        Tests the bug MONDRIAN-779. The MemberListCrossJoinArg was not considering the 'exclude' attribute in its hash code. This resulted in two filters being chained within two different named sets to register a cache element with the same key, even though they were the different because of the added "NOT" keyword.
      • testMultiValueInWithNullVals

        public void testMultiValueInWithNullVals()
        http://jira.pentaho.com/browse/MONDRIAN-1458 When using a multi value IN clause which includes null values against a collapsed field on an aggregate table, the dimension table field was referenced as the column expression, causing sql errors.