Calculated members of a virtual cube are ignored.
When accessing Foodmart with mondrian directly they are there, so i assume its an olap4j bug.
Test cube is the "Warehouse and Sales" cube in Foodmart.
I extended the ConnectionTest.testMetadata() with the following lines at the end to prove it: (not commited)
Cube warehouseSalesCube =
olapConnection
.getOlapCatalogs()
.get("FoodMart")
.getSchemas()
.get("FoodMart")
.getCubes()
.get("Warehouse and Sales");
Set<String> measureVcNameSet = new HashSet<String>();
for (Measure measure : warehouseSalesCube.getMeasures()) {
measureVcNameSet.add(measure.getName());
}
assertEquals(
new HashSet<String>(
Arrays.asList(
"Sales Count",
"Store Cost",
"Store Sales",
"Unit Sales",
"Profit",
"Profit Growth",
"Store Invoice",
"Supply Time",
"Units Ordered",
"Units Shipped",
"Warehouse Cost",
"Warehouse Profit",
"Warehouse Sales",
"Average Warehouse Sale")),
measureNameSet);
result:
junit.framework.AssertionFailedError: expected:
<[Warehouse Profit, Units Ordered, Store Invoice, Profit, Unit Sales, Supply Time, Sales Count, Average Warehouse Sale, Warehouse Cost, Units Shipped, Store Sales, Warehouse Sales, Store Cost, Profit Growth]>
but was:
<[Customer Count, Promotion Sales, Profit, Unit Sales, Sales Count, Store Sales, Store Cost, Profit Growth]>
fixed due http://jira.pentaho.com/browse/MONDRIAN-923
enabled test