You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lens.apache.org by am...@apache.org on 2016/04/27 05:15:43 UTC
lens git commit: LENS-906 : Reduce test time for
TestCubeMetastoreClient
Repository: lens
Updated Branches:
refs/heads/master f21130992 -> 6e11d780f
LENS-906 : Reduce test time for TestCubeMetastoreClient
Project: http://git-wip-us.apache.org/repos/asf/lens/repo
Commit: http://git-wip-us.apache.org/repos/asf/lens/commit/6e11d780
Tree: http://git-wip-us.apache.org/repos/asf/lens/tree/6e11d780
Diff: http://git-wip-us.apache.org/repos/asf/lens/diff/6e11d780
Branch: refs/heads/master
Commit: 6e11d780f8ede78745f5247d983c0f63f42fb41d
Parents: f211309
Author: Amareshwari Sriramadasu <am...@apache.org>
Authored: Wed Apr 27 08:45:30 2016 +0530
Committer: Amareshwari Sriramadasu <am...@apache.org>
Committed: Wed Apr 27 08:45:30 2016 +0530
----------------------------------------------------------------------
.../cube/metadata/TestCubeMetastoreClient.java | 73 ++++++++++++++++++--
1 file changed, 69 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lens/blob/6e11d780/lens-cube/src/test/java/org/apache/lens/cube/metadata/TestCubeMetastoreClient.java
----------------------------------------------------------------------
diff --git a/lens-cube/src/test/java/org/apache/lens/cube/metadata/TestCubeMetastoreClient.java b/lens-cube/src/test/java/org/apache/lens/cube/metadata/TestCubeMetastoreClient.java
index 0773005..02571ee 100644
--- a/lens-cube/src/test/java/org/apache/lens/cube/metadata/TestCubeMetastoreClient.java
+++ b/lens-cube/src/test/java/org/apache/lens/cube/metadata/TestCubeMetastoreClient.java
@@ -72,6 +72,10 @@ public class TestCubeMetastoreClient {
private static Set<String> dimensions;
private static Set<CubeMeasure> cubeMeasures;
private static Set<CubeDimAttribute> cubeDimensions;
+ private static Set<String> moreMeasures = Sets.newHashSet();
+ private static Set<String> moreDimensions = Sets.newHashSet();
+ private static Set<CubeMeasure> moreCubeMeasures = Sets.newHashSet();
+ private static Set<CubeDimAttribute> moreCubeDimensions = Sets.newHashSet();
private static Set<UpdatePeriod> hourlyAndDaily = Sets.newHashSet(HOURLY, DAILY);
private static final String CUBE_NAME = "testMetastoreCube";
private static final String CUBE_NAME_WITH_PROPS = "testMetastoreCubeWithProps";
@@ -340,16 +344,20 @@ public class TestCubeMetastoreClient {
});
cubeDimensions.add(new ReferencedDimAttribute(new FieldSchema("zipcityname", "string", "zip city name"),
"Zip city name", "cityFromZip", "name", null, null, null));
- cubeMeasures.addAll(dummyMeasure);
- cubeDimensions.addAll(dummyDimAttributes);
+ moreCubeMeasures.addAll(cubeMeasures);
+ moreCubeMeasures.addAll(dummyMeasure);
+ moreCubeDimensions.addAll(cubeDimensions);
+ moreCubeDimensions.addAll(dummyDimAttributes);
cube = new Cube(cubeName, cubeMeasures, cubeDimensions, cubeExpressions, joinChains, emptyHashMap, 0.0);
measures = Sets.newHashSet("msr1", "msr2", "msr3");
+ moreMeasures.addAll(measures);
for(CubeMeasure measure: dummyMeasure) {
- measures.add(measure.getName());
+ moreMeasures.add(measure.getName());
}
dimensions = Sets.newHashSet("dim1", "dim2", "dim3");
+ moreDimensions.addAll(dimensions);
for(CubeDimAttribute dimAttribute: dummyDimAttributes) {
- dimensions.add(dimAttribute.getName());
+ moreDimensions.add(dimAttribute.getName());
}
derivedCube = new DerivedCube(derivedCubeName, measures, dimensions, cube);
@@ -784,6 +792,63 @@ public class TestCubeMetastoreClient {
}
@Test(priority = 1)
+ public void testCubeWithMoreMeasures() throws Exception {
+ String cubeName = "cubeWithMoreMeasures";
+ Cube cube = new Cube(cubeName, moreCubeMeasures, moreCubeDimensions, cubeExpressions, joinChains, emptyHashMap,
+ 0.0);
+ client.createCube(cubeName, moreCubeMeasures, moreCubeDimensions, cubeExpressions, joinChains, emptyHashMap);
+ assertTrue(client.tableExists(cubeName));
+ Table cubeTbl = client.getHiveTable(cubeName);
+ assertTrue(client.isCube(cubeTbl));
+ Cube cube2 = new Cube(cubeTbl);
+ assertTrue(cube.equals(cube2));
+ assertFalse(cube2.isDerivedCube());
+ assertTrue(cube2.getTimedDimensions().isEmpty());
+ assertEquals(moreCubeMeasures.size(), cube2.getMeasureNames().size());
+ // +8 is for hierarchical dimension
+ assertEquals(moreCubeDimensions.size() + 8, cube2.getDimAttributeNames().size());
+ assertEquals(moreCubeMeasures.size(), cube2.getMeasures().size());
+ assertEquals(cubeExpressions.size(), cube2.getExpressions().size());
+ assertEquals(cubeExpressions.size(), cube2.getExpressionNames().size());
+ assertEquals(moreCubeDimensions.size(), cube2.getDimAttributes().size());
+ assertEquals(moreCubeDimensions.size() + 8 + moreCubeMeasures.size() + cubeExpressions.size(), cube2
+ .getAllFieldNames().size());
+ assertNotNull(cube2.getMeasureByName("msr4"));
+ assertNotNull(cube2.getMeasureByName("dummy_msr1"));
+ assertNotNull(cube2.getMeasureByName("dummy_msr4000"));
+ assertNotNull(cube2.getDimAttributeByName("location"));
+ assertNotNull(cube2.getDimAttributeByName("dummy_dim1"));
+ assertNotNull(cube2.getDimAttributeByName("dummy_dim4000"));
+ assertTrue(cube2.allFieldsQueriable());
+
+ String derivedCubeName = "derivedWithMoreMeasures";
+ DerivedCube derivedCube = new DerivedCube(derivedCubeName, moreMeasures, moreDimensions, cube);
+ client.createDerivedCube(cubeName, derivedCubeName, moreMeasures, moreDimensions, emptyHashMap, 0L);
+ assertTrue(client.tableExists(derivedCubeName));
+ Table derivedTbl = client.getHiveTable(derivedCubeName);
+ assertTrue(client.isCube(derivedTbl));
+ DerivedCube dcube2 = new DerivedCube(derivedTbl, cube);
+ assertTrue(derivedCube.equals(dcube2));
+ assertTrue(dcube2.isDerivedCube());
+ assertTrue(dcube2.getTimedDimensions().isEmpty());
+ assertEquals(moreMeasures.size(), dcube2.getMeasureNames().size());
+ assertEquals(moreDimensions.size(), dcube2.getDimAttributeNames().size());
+ assertEquals(moreMeasures.size(), dcube2.getMeasures().size());
+ assertEquals(moreDimensions.size(), dcube2.getDimAttributes().size());
+ assertNotNull(dcube2.getMeasureByName("msr3"));
+ assertNull(dcube2.getMeasureByName("msr4"));
+ assertNotNull(dcube2.getMeasureByName("dummy_msr1"));
+ assertNotNull(dcube2.getMeasureByName("dummy_msr4000"));
+ assertNull(dcube2.getDimAttributeByName("location"));
+ assertNotNull(dcube2.getDimAttributeByName("dummy_dim1"));
+ assertNotNull(dcube2.getDimAttributeByName("dummy_dim4000"));
+ assertNotNull(dcube2.getDimAttributeByName("dim1"));
+ assertTrue(dcube2.allFieldsQueriable());
+ client.dropCube(derivedCubeName);
+ client.dropCube(cubeName);
+ }
+
+ @Test(priority = 1)
public void testColumnTags() throws Exception {
String cubename = "cubetags";
Map<String, String> tag1 = new HashMap<>();