public class ParentChildHierarchyTest extends FoodMartTestCase
FoodMartTestCase.QueryAndResult
propSaver
Constructor and Description |
---|
ParentChildHierarchyTest(String name) |
Modifier and Type | Method and Description |
---|---|
void |
_testNonClosureParentChildHierarchy()
|
void |
testAll() |
void |
testAllMembersParent() |
void |
testBridgeTable()
|
void |
testBugMondrian168()
|
void |
testChildrenOfAll() |
void |
testClosureTableInVirtualCube()
|
void |
testClosureVsNoClosure()
Verifies the fix for
MONDRIAN-519,
a class cast exception when using non-closure parent child hierarchies.
|
void |
testDistinctAll()
|
void |
testDistinctAllExplicitClosure()
Verifies that COUNT DISTINCT works against the explict closure of the
parent/child hierarchy.
|
void |
testDistinctChildrenOfAll() |
void |
testDistinctChildrenOfAllExplicitClosure() |
void |
testDistinctSubtree() |
void |
testDistinctSubtreeExplicitClosure() |
void |
testDotMembersNoClosure() |
void |
testGenuineCycle() |
void |
testHierarchyFalseCycle()
The recursion cyclicity check kicks in when the recursion depth reachs
the number of dimensions in the cube.
|
void |
testLeaf() |
void |
testLevelMembers() |
void |
testOneAboveLeaf() |
void |
testParentChildDescendantsLeavesBottom()
Script That Uses the LEAVES Flag to Return the Bottom 10 Dimension
Members, from here.
|
void |
testParentChildDescendantsLeavesTop()
Script from here.
|
void |
testParentChildDrillThrough() |
void |
testParentChildDrillThroughWithContext() |
void |
testParentChildOrdinal()
Tests that a parent-child hierarchy is sorted correctly if the
"ordinalColumn" attribute is included in its definition.
|
void |
testPCCacheKeyBug()
Fix for
MONDRIAN-1225
|
void |
testSchemaReaderLevelMembers() |
void |
testSharedClosureParentChildHierarchy() |
void |
testSnowflakeClosure()
Tests snow flake closure combination.
|
allMember, assertAxisReturns, assertAxisThrows, assertBooleanExprReturns, assertExprReturns, assertExprThrows, assertQueriesReturnSimilarResults, assertQueryReturns, assertQueryThrows, assertSize, cubeByName, execute, executeExpr, executeQuery, executeSingletonAxis, genderMembersIncludingAll, getConnection, getDimensionWithName, getTestContext, isDefaultNullMemberRepresentation, isGroupingSetsSupported, member, productMembersPotScrubbersPotsAndPans, storeMembersCAAndOR, storeMembersUsaAndCanada, tearDown, verifySameNativeAndNot, warehouseMembersCanadaMexicoUsa
countTestCases, createResult, getName, run, run, runBare, runTest, setName, setUp, toString
assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, fail, fail
public ParentChildHierarchyTest(String name)
public void testDotMembersNoClosure()
public void testSnowflakeClosure()
Test case for MONDRIAN-266, "Closure tables do not work in a Snowflake Dimension".
public void testSharedClosureParentChildHierarchy()
public void _testNonClosureParentChildHierarchy()
public void testAll()
public void testChildrenOfAll()
public void testDistinctAll()
public void testDistinctChildrenOfAll()
public void testDistinctSubtree()
public void testDistinctAllExplicitClosure()
public void testDistinctChildrenOfAllExplicitClosure()
public void testDistinctSubtreeExplicitClosure()
public void testLeaf()
public void testOneAboveLeaf()
public void testParentChildDescendantsLeavesBottom()
public void testParentChildDescendantsLeavesTop()
public void testAllMembersParent()
public void testHierarchyFalseCycle()
public void testGenuineCycle()
public void testParentChildDrillThrough()
public void testParentChildDrillThroughWithContext()
public void testBugMondrian168()
public void testParentChildOrdinal()
public void testLevelMembers()
public void testClosureTableInVirtualCube()
public void testClosureVsNoClosure()
public void testSchemaReaderLevelMembers()
public void testBridgeTable()
public void testPCCacheKeyBug() throws Exception
When nativizing a set which contained a PC hierarchy, the SqlTupleReader would ask the cache for the parent member of the member it was populating, but the members are only put in cache at the second phase of the tuple computation, once all the members have been populated from SQL. Now, the SqlTupleReader keeps an intermediate key->member map so it can construct PC hierarchies correctly. This map gets picked up by the GC as soon as the SQL result set reaches its end and the tuple reader is closed, so there are no added cost to this.
Exception