Package mondrian.test
Class Ssas2005CompatibilityTest
- java.lang.Object
-
- TestCase
-
- mondrian.test.FoodMartTestCase
-
- mondrian.test.Ssas2005CompatibilityTest
-
- Direct Known Subclasses:
Ssas2005CompatibilityTest.NewBehaviorTest
,Ssas2005CompatibilityTest.OldBehaviorTest
public class Ssas2005CompatibilityTest extends FoodMartTestCase
Unit tests that check compatibility with Microsoft SQL Server Analysis Services 2005.This suite contains a MDX collection of queries that were run on SSAS. The queries cover a variety of issues, including multiple hierarchies in a dimension, attribute hierarchies, and name resolution. Expect to find tests for these areas in dedicated tests also.
There are tests for features which are unimplemented or where mondrian's behavior differs from SSAS2005. These tests will appear in this file disabled or with (clearly marked) incorrect results.
- Since:
- December 15, 2008
- Author:
- jhyde
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Ssas2005CompatibilityTest.NewBehaviorTest
Subclass ofSsas2005CompatibilityTest
that runs withMondrianProperties.SsasCompatibleNaming
=true.static class
Ssas2005CompatibilityTest.OldBehaviorTest
Subclass ofSsas2005CompatibilityTest
that runs withMondrianProperties.SsasCompatibleNaming
=false.-
Nested classes/interfaces inherited from class mondrian.test.FoodMartTestCase
FoodMartTestCase.QueryAndResult
-
-
Field Summary
Fields Modifier and Type Field Description static boolean
ATTR_HIER_IMPL
Whether attribute hierarchies are implemented.static boolean
AXIS_IMPL
Whether the AXIS function has been are implemented.-
Fields inherited from class mondrian.test.FoodMartTestCase
propSaver
-
-
Constructor Summary
Constructors Constructor Description Ssas2005CompatibilityTest(String name)
Creates a Ssas2005CompatibilityTest.
-
Method Summary
-
Methods inherited from class mondrian.test.FoodMartTestCase
allMember, assertAxisReturns, assertAxisThrows, assertBooleanExprReturns, assertExprReturns, assertExprThrows, assertQueriesReturnSimilarResults, assertQueryReturns, assertQueryThrows, assertSize, cubeByName, execute, executeExpr, executeQuery, executeSingletonAxis, genderMembersIncludingAll, getConnection, getDimensionWithName, isDefaultNullMemberRepresentation, isGroupingSetsSupported, member, productMembersPotScrubbersPotsAndPans, storeMembersCAAndOR, storeMembersUsaAndCanada, tearDown, verifySameNativeAndNot, warehouseMembersCanadaMexicoUsa
-
-
-
-
Field Detail
-
ATTR_HIER_IMPL
public static final boolean ATTR_HIER_IMPL
Whether attribute hierarchies are implemented.- See Also:
- Constant Field Values
-
AXIS_IMPL
public static final boolean AXIS_IMPL
Whether the AXIS function has been are implemented.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
Ssas2005CompatibilityTest
public Ssas2005CompatibilityTest(String name)
Creates a Ssas2005CompatibilityTest.- Parameters:
name
- Testcase name
-
-
Method Detail
-
getTestContext
public TestContext getTestContext()
Description copied from class:FoodMartTestCase
Returns the test context. Override this method if you wish to use a different source for your FoodMart connection.- Overrides:
getTestContext
in classFoodMartTestCase
-
testUniqueName
public void testUniqueName()
-
testDimensionDotHierarchyAmbiguous
public void testDimensionDotHierarchyAmbiguous()
-
testHierarchyLevelsFunction
public void testHierarchyLevelsFunction()
-
testDimensionDotHierarchyDotLevelDotMembers
public void testDimensionDotHierarchyDotLevelDotMembers()
-
testDimensionDotHierarchyDotLevel
public void testDimensionDotHierarchyDotLevel()
-
testNamingDimensionDotLevel
public void testNamingDimensionDotLevel()
-
testNamingDimensionDotLevel2
public void testNamingDimensionDotLevel2()
-
testNamingDimensionDotLevelNotUnique
public void testNamingDimensionDotLevelNotUnique()
-
testDimensionMembersOnSingleHierarchyDimension
public void testDimensionMembersOnSingleHierarchyDimension()
-
testMultipleHierarchyRequiresQualification
public void testMultipleHierarchyRequiresQualification()
-
testCalcMemberAmbiguousHierarchy
public void testCalcMemberAmbiguousHierarchy()
Tests that it is an error to define a calc member in a dimension with multiple hierarchies without specifying hierarchy. Based onBasicQueryTest.testHalfYears()
.
-
testUnqualifiedHierarchy
public void testUnqualifiedHierarchy()
-
testYtd
public void testYtd()
Tests that time functions such as Ytd behave correctly when there are multiple time hierarchies.
-
testAxesOutOfOrder
public void testAxesOutOfOrder()
-
testDimensionMembersRequiresHierarchyQualification
public void testDimensionMembersRequiresHierarchyQualification()
-
testDimensionMemberRequiresHierarchyQualification
public void testDimensionMemberRequiresHierarchyQualification()
-
testImplicitCurrentMemberRequiresHierarchyQualification
public void testImplicitCurrentMemberRequiresHierarchyQualification()
-
testUnqualifiedHierarchyCurrentMember
public void testUnqualifiedHierarchyCurrentMember()
-
testCannotDistinguishMdxFromSql
public void testCannotDistinguishMdxFromSql()
-
testNamingDimensionAttr
public void testNamingDimensionAttr()
-
testNamingDimensionAttrVsLevel
public void testNamingDimensionAttrVsLevel()
-
testAttrHierarchyMemberParent
public void testAttrHierarchyMemberParent()
-
testAttrHierarchyMemberChildren
public void testAttrHierarchyMemberChildren()
-
testAttrHierarchyAllMemberChildren
public void testAttrHierarchyAllMemberChildren()
-
testAttrHierarchyMemberLevel
public void testAttrHierarchyMemberLevel()
-
testAttrHierarchyUniqueName
public void testAttrHierarchyUniqueName()
-
testMemberAddressedByLevelAndKey
public void testMemberAddressedByLevelAndKey()
-
testMemberAddressedByCompoundKey
public void testMemberAddressedByCompoundKey()
-
testMemberAddressedByPartialCompoundKey
public void testMemberAddressedByPartialCompoundKey()
-
testMemberAddressedByNonUniqueName
public void testMemberAddressedByNonUniqueName()
-
testMemberAddressedByLevelAndCompoundKey
public void testMemberAddressedByLevelAndCompoundKey()
-
testMemberAddressedByLevelAndName
public void testMemberAddressedByLevelAndName()
-
testFoo31
public void testFoo31()
-
testFoo32
public void testFoo32()
-
testNamingAttrVsLevel
public void testNamingAttrVsLevel()
-
testUnqualifiedLevel
public void testUnqualifiedLevel()
-
testDimensionAsScalarExpression
public void testDimensionAsScalarExpression()
-
testDimensionWithMultipleHierarchiesDotParent
public void testDimensionWithMultipleHierarchiesDotParent()
-
testDimensionDotHierarchyInBrackets
public void testDimensionDotHierarchyInBrackets()
-
testDimensionDotHierarchySameNameInBrackets
public void testDimensionDotHierarchySameNameInBrackets()
Test case for bug 2688790, "Hierarchy Naming Compatibility issue". Occurs when dimension and hierarchy have the same name and are used with [name.name].
-
testDimensionDotLevelDotHierarchyInBrackets
public void testDimensionDotLevelDotHierarchyInBrackets()
-
testDimensionDotInvalidHierarchyInBrackets
public void testDimensionDotInvalidHierarchyInBrackets()
-
testDimensionDotDimensionInBrackets
public void testDimensionDotDimensionInBrackets()
-
testDimensionDotHierarchyDotNonExistentLevel
public void testDimensionDotHierarchyDotNonExistentLevel()
-
testDimensionDotHierarchyDotLevelMembers
public void testDimensionDotHierarchyDotLevelMembers()
-
testDupHierarchyOnAxes
public void testDupHierarchyOnAxes()
-
testDimensionOnAxis
public void testDimensionOnAxis()
-
testDimensionDotHierarchyOnAxis
public void testDimensionDotHierarchyOnAxis()
-
testHierarchiesFromSameDimensionOnAxes
public void testHierarchiesFromSameDimensionOnAxes()
-
testDifferentHierarchiesFromSameDimensionOnAxes
public void testDifferentHierarchiesFromSameDimensionOnAxes()
-
testDifferentHierarchiesFromSameDimensionInCrossjoin
public void testDifferentHierarchiesFromSameDimensionInCrossjoin()
-
testHierarchyUsedTwiceInCrossjoin
public void testHierarchyUsedTwiceInCrossjoin()
-
testAttributeHierarchyUsedTwiceInCrossjoin
public void testAttributeHierarchyUsedTwiceInCrossjoin()
-
testFoo50
public void testFoo50()
-
testQuoteInStringInQuotedFormula
public void testQuoteInStringInQuotedFormula()
-
testQuoteInStringInUnquotedFormula
public void testQuoteInStringInUnquotedFormula()
-
testMemberIdentifiedByDimensionAndKey
public void testMemberIdentifiedByDimensionAndKey()
-
testDimensionHierarchyKey
public void testDimensionHierarchyKey()
-
testCompoundKey
public void testCompoundKey()
-
testCompoundKeySyntaxError
public void testCompoundKeySyntaxError()
-
testCompoundKeyStringBad
public void testCompoundKeyStringBad()
-
testCompoundKeyString
public void testCompoundKeyString()
-
testNameAfterKey
public void testNameAfterKey()
Tests a member where a name segments[San Francisco].[Store 14]
occur after a key segment&&CA
.Needs to work regardless of the value of
MondrianProperties.SsasCompatibleNaming
. Mondrian-3 had this functionality.
-
testNameAfterCompositeKey
public void testNameAfterCompositeKey()
Tests a member where a name segment[Store 14]
occurs after a composite key segment&[San Francisco]&CA
.
-
testCompoundKeyAll
public void testCompoundKeyAll()
-
testCompoundKeyParent
public void testCompoundKeyParent()
-
testCompoundKeyNull
public void testCompoundKeyNull()
-
testFoo56
public void testFoo56()
-
testKeyNonExistent
public void testKeyNonExistent()
-
testAxesLabelsOutOfSequence
public void testAxesLabelsOutOfSequence()
-
testAxisLabelsNotContiguousFails
public void testAxisLabelsNotContiguousFails()
-
testLotsOfAxes
public void testLotsOfAxes()
-
testOnAxesFails
public void testOnAxesFails()
-
testOnExpression
public void testOnExpression()
-
testOnFractionFails
public void testOnFractionFails()
-
testAxisFunction
public void testAxisFunction()
-
testAxisAppliedToExpr
public void testAxisAppliedToExpr()
-
testAxisFunctionReferencesPreviousAxis
public void testAxisFunctionReferencesPreviousAxis()
-
testAxisFunctionReferencesSameAxisFails
public void testAxisFunctionReferencesSameAxisFails()
-
testAxisFunctionReferencesSameAxisZeroFails
public void testAxisFunctionReferencesSameAxisZeroFails()
-
testAxisFunctionReferencesLaterAxis
public void testAxisFunctionReferencesLaterAxis()
-
testAxisFunctionReferencesSameAxisInlineFails
public void testAxisFunctionReferencesSameAxisInlineFails()
-
testCrossjoinMember
public void testCrossjoinMember()
-
testCanHaveMemberWithSameNameAsLevel
public void testCanHaveMemberWithSameNameAsLevel() throws SQLException
Tests the ambiguity between a level and a member of the same name, both in SSAS compatible mode and in regular mode.- Throws:
SQLException
- If the test fails.
-
testMemberNameSortCaseSensitivity
public void testMemberNameSortCaseSensitivity()
-
testRootMembers
public void testRootMembers()
SSAS can resolve root members of a hierarchy even if not qualified by hierarchy, and even if the dimension has more than one hierarchy.
-
-