Package mondrian.test
Class SolveOrderScopeIsolationTest
- java.lang.Object
-
- TestCase
-
- mondrian.test.FoodMartTestCase
-
- mondrian.test.SolveOrderScopeIsolationTest
-
public class SolveOrderScopeIsolationTest extends FoodMartTestCase
SolveOrderScopeIsolationTest
Test conformance to SSAS2005 solve order scope isolation behavior. Scope Isolation: In SQL Server 2005 Analysis Services, when a cube Multidimensional Expressions (MDX) script contains calculated members, by default the calculated members are resolved before any session-scoped calculations are resolved and before any query-defined calculations are resolved. This is different from SQL Server 2000 Analysis Services behavior, where solve order can explicitly be used to insert a session-scoped or query-defined calculation in between two cube-level calculations. Further details at: http://msdn2.microsoft.com/en-us/library/ms144787.aspx This initial set of tests are added to indicate the kind of behavior that is expected to support this SSAS 2005 feature. All tests start with an underscore so as to not to execute even if the test class is added to Main- Since:
- Apr 04, 2008
- Author:
- ajogleka
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class mondrian.test.FoodMartTestCase
FoodMartTestCase.QueryAndResult
-
-
Field Summary
Fields Modifier and Type Field Description (package private) SolveOrderMode
defaultSolveOrderMode
-
Fields inherited from class mondrian.test.FoodMartTestCase
propSaver
-
-
Constructor Summary
Constructors Constructor Description SolveOrderScopeIsolationTest()
-
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, verifySameNativeAndNot, warehouseMembersCanadaMexicoUsa
-
-
-
-
Field Detail
-
defaultSolveOrderMode
SolveOrderMode defaultSolveOrderMode
-
-
Method Detail
-
setUp
public void setUp() throws java.lang.Exception
- Throws:
java.lang.Exception
-
tearDown
public void tearDown() throws java.lang.Exception
- Overrides:
tearDown
in classFoodMartTestCase
- Throws:
java.lang.Exception
-
setSolveOrderMode
final void setSolveOrderMode(SolveOrderMode mode)
-
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
-
testAllSolveOrderModesHandled
public void testAllSolveOrderModesHandled()
-
testSetSolveOrderMode
public void testSetSolveOrderMode()
-
testOverrideCubeMemberDoesNotHappenAbsolute
public void testOverrideCubeMemberDoesNotHappenAbsolute()
-
testOverrideCubeMemberDoesNotHappenScoped
public void testOverrideCubeMemberDoesNotHappenScoped()
-
_future_testOverrideCubeMemberHappensWithScopeIsolation
public void _future_testOverrideCubeMemberHappensWithScopeIsolation()
Test for future capability: SCOPE_ISOLATION=CUBE which is implemented in Analysis Services but not yet in Mondrian.
-
testCubeMemberEvalBeforeQueryMemberAbsolute
public void testCubeMemberEvalBeforeQueryMemberAbsolute()
-
testCubeMemberEvalBeforeQueryMemberScoped
public void testCubeMemberEvalBeforeQueryMemberScoped()
-
testOverrideCubeMemberInTupleDoesNotHappenAbsolute
public void testOverrideCubeMemberInTupleDoesNotHappenAbsolute()
-
testOverrideCubeMemberInTupleDoesNotHappenScoped
public void testOverrideCubeMemberInTupleDoesNotHappenScoped()
-
testConditionalCubeMemberEvalBeforeOtherMembersAbsolute
public void testConditionalCubeMemberEvalBeforeOtherMembersAbsolute()
-
testConditionalCubeMemberEvalBeforeOtherMembersScoped
public void testConditionalCubeMemberEvalBeforeOtherMembersScoped()
-
testOverrideCubeMemberUsingStrToMemberDoesNotHappenAbsolute
public void testOverrideCubeMemberUsingStrToMemberDoesNotHappenAbsolute()
-
testOverrideCubeMemberUsingStrToMemberDoesNotHappenScoped
public void testOverrideCubeMemberUsingStrToMemberDoesNotHappenScoped()
-
testAggregateMemberEvalAfterOtherMembersAbsolute
public void testAggregateMemberEvalAfterOtherMembersAbsolute()
This test validates that behavior is consistent with Analysis Services 2000 when Solve order scope is ABSOLUTE. AS2K will throw an error whenever attempting to aggregate over calculated members (i.e. when the solve order of the Aggregate member is higher than the calculations it intersects with).
-
testAggregateMemberEvalAfterOtherMembersScoped
public void testAggregateMemberEvalAfterOtherMembersScoped()
-
testConditionalAggregateMemberEvalAfterOtherMembersAbsolute
public void testConditionalAggregateMemberEvalAfterOtherMembersAbsolute()
This test validates that behavior is consistent with Analysis Services 2000 when Solve order scope is ABSOLUTE. AS2K will throw an error whenever attempting to aggregate over calculated members (i.e. when the solve order of the Aggregate member is higher than the calculations it intersects with).
-
testConditionalAggregateMemberEvalAfterOtherMembersScoped
public void testConditionalAggregateMemberEvalAfterOtherMembersScoped()
-
testStrToMemberReturningAggEvalAfterOtherMembersAbsolute
public void testStrToMemberReturningAggEvalAfterOtherMembersAbsolute()
This test validates that behavior is consistent with Analysis Services 2000 when Solve order scope is ABSOLUTE. AS2K will throw an error whenever attempting to aggregate over calculated members (i.e. when the solve order of the Aggregate member is higher than the calculations it intersects with).
-
testStrToMemberReturningAggEvalAfterOtherMembersScoped
public void testStrToMemberReturningAggEvalAfterOtherMembersScoped()
-
test2LevelOfOverrideCubeMemberDoesNotHappenAbsolute
public void test2LevelOfOverrideCubeMemberDoesNotHappenAbsolute()
-
test2LevelOfOverrideCubeMemberDoesNotHappenScoped
public void test2LevelOfOverrideCubeMemberDoesNotHappenScoped()
-
-