[1/4] kylin git commit: KYLIN-2672 Add UT
Repository: kylin Updated Branches: refs/heads/2.3.x bd88a718d -> 1320de725 KYLIN-2672 Add UT Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/1320de72 Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/1320de72 Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/1320de72 Branch: refs/heads/2.3.x Commit: 1320de72585fb63e77835f96dd8d19e4be157910 Parents: 8add1b4 Author: kangkaisenAuthored: Fri Feb 9 15:53:02 2018 +0800 Committer: Billy Liu Committed: Fri Feb 9 21:25:19 2018 +0800 -- .../rest/controller/CacheControllerTest.java| 54 +++- 1 file changed, 53 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/kylin/blob/1320de72/server/src/test/java/org/apache/kylin/rest/controller/CacheControllerTest.java -- diff --git a/server/src/test/java/org/apache/kylin/rest/controller/CacheControllerTest.java b/server/src/test/java/org/apache/kylin/rest/controller/CacheControllerTest.java index c2e21cc..3466a36 100644 --- a/server/src/test/java/org/apache/kylin/rest/controller/CacheControllerTest.java +++ b/server/src/test/java/org/apache/kylin/rest/controller/CacheControllerTest.java @@ -19,7 +19,17 @@ package org.apache.kylin.rest.controller; import java.io.IOException; +import java.util.HashMap; +import java.util.Map; +import org.apache.kylin.common.KylinConfig; +import org.apache.kylin.common.persistence.JsonSerializer; +import org.apache.kylin.common.persistence.Serializer; +import org.apache.kylin.cube.CubeDescManager; +import org.apache.kylin.cube.model.CubeDesc; +import org.apache.kylin.metadata.model.DataModelDesc; +import org.apache.kylin.metadata.model.TableRef; +import org.apache.kylin.rest.request.CubeMigrationRequest; import org.apache.kylin.rest.service.CacheService; import org.apache.kylin.rest.service.ServiceTestBase; import org.junit.Before; @@ -27,6 +37,9 @@ import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotEquals; + /** * @author shaoshi */ @@ -48,7 +61,46 @@ public class CacheControllerTest extends ServiceTestBase { @Test public void testBasics() throws IOException { - cacheController.wipeCache("cube_desc", "drop", "test_kylin_cube_with_slr_desc"); } + +@Test +public void testClearCacheForCubeMigration() throws IOException { +KylinConfig config = KylinConfig.getInstanceFromEnv(); +String CUBENAME = "test_kylin_cube_without_slr_desc"; + +CubeDescManager cubeDescManager = CubeDescManager.getInstance(config); +CubeDesc cubeDesc = cubeDescManager.getCubeDesc(CUBENAME); +DataModelDesc modelDesc = cubeDesc.getModel(); +Map tableToProjects = new HashMap<>(); +for (TableRef tableRef : modelDesc.getAllTables()) { +tableToProjects.put(tableRef.getTableIdentity(), tableRef.getTableDesc().getProject()); +} + +String uuid = cubeDesc.getUuid(); +String signature = cubeDesc.getSignature(); + +assertEquals(cubeDesc.getRetentionRange(), 0); + +//update cubeDesc +cubeDesc.setRetentionRange(2018); +cubeDesc.updateRandomUuid(); + +//directly update metadata in store to simulate cube migration +Serializer cubeDescSerializer = new JsonSerializer(CubeDesc.class); +getStore().putResource(cubeDesc.getResourcePath(), cubeDesc, cubeDescSerializer); + +CubeMigrationRequest request = new CubeMigrationRequest(); +request.setCube(cubeDesc.getName()); +request.setModel(modelDesc.getName()); +request.setProject(modelDesc.getProject()); +request.setTableToProjects(tableToProjects); + +cacheController.clearCacheForCubeMigration(request); + +assertEquals(2018, cubeDescManager.getCubeDesc(CUBENAME).getRetentionRange()); +assertEquals(signature, cubeDescManager.getCubeDesc(CUBENAME).getSignature()); +assertNotEquals(uuid, cubeDescManager.getCubeDesc(CUBENAME).getUuid()); +} + }
[3/3] kylin git commit: KYLIN-2672 Add UT
KYLIN-2672 Add UT Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/50990664 Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/50990664 Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/50990664 Branch: refs/heads/master Commit: 509906641dc819ecc03bb1050bcdc33e1236e6cf Parents: 5cecbce Author: kangkaisenAuthored: Fri Feb 9 15:53:02 2018 +0800 Committer: Billy Liu Committed: Fri Feb 9 21:20:03 2018 +0800 -- .../rest/controller/CacheControllerTest.java| 54 +++- 1 file changed, 53 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/kylin/blob/50990664/server/src/test/java/org/apache/kylin/rest/controller/CacheControllerTest.java -- diff --git a/server/src/test/java/org/apache/kylin/rest/controller/CacheControllerTest.java b/server/src/test/java/org/apache/kylin/rest/controller/CacheControllerTest.java index c2e21cc..3466a36 100644 --- a/server/src/test/java/org/apache/kylin/rest/controller/CacheControllerTest.java +++ b/server/src/test/java/org/apache/kylin/rest/controller/CacheControllerTest.java @@ -19,7 +19,17 @@ package org.apache.kylin.rest.controller; import java.io.IOException; +import java.util.HashMap; +import java.util.Map; +import org.apache.kylin.common.KylinConfig; +import org.apache.kylin.common.persistence.JsonSerializer; +import org.apache.kylin.common.persistence.Serializer; +import org.apache.kylin.cube.CubeDescManager; +import org.apache.kylin.cube.model.CubeDesc; +import org.apache.kylin.metadata.model.DataModelDesc; +import org.apache.kylin.metadata.model.TableRef; +import org.apache.kylin.rest.request.CubeMigrationRequest; import org.apache.kylin.rest.service.CacheService; import org.apache.kylin.rest.service.ServiceTestBase; import org.junit.Before; @@ -27,6 +37,9 @@ import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotEquals; + /** * @author shaoshi */ @@ -48,7 +61,46 @@ public class CacheControllerTest extends ServiceTestBase { @Test public void testBasics() throws IOException { - cacheController.wipeCache("cube_desc", "drop", "test_kylin_cube_with_slr_desc"); } + +@Test +public void testClearCacheForCubeMigration() throws IOException { +KylinConfig config = KylinConfig.getInstanceFromEnv(); +String CUBENAME = "test_kylin_cube_without_slr_desc"; + +CubeDescManager cubeDescManager = CubeDescManager.getInstance(config); +CubeDesc cubeDesc = cubeDescManager.getCubeDesc(CUBENAME); +DataModelDesc modelDesc = cubeDesc.getModel(); +Map tableToProjects = new HashMap<>(); +for (TableRef tableRef : modelDesc.getAllTables()) { +tableToProjects.put(tableRef.getTableIdentity(), tableRef.getTableDesc().getProject()); +} + +String uuid = cubeDesc.getUuid(); +String signature = cubeDesc.getSignature(); + +assertEquals(cubeDesc.getRetentionRange(), 0); + +//update cubeDesc +cubeDesc.setRetentionRange(2018); +cubeDesc.updateRandomUuid(); + +//directly update metadata in store to simulate cube migration +Serializer cubeDescSerializer = new JsonSerializer(CubeDesc.class); +getStore().putResource(cubeDesc.getResourcePath(), cubeDesc, cubeDescSerializer); + +CubeMigrationRequest request = new CubeMigrationRequest(); +request.setCube(cubeDesc.getName()); +request.setModel(modelDesc.getName()); +request.setProject(modelDesc.getProject()); +request.setTableToProjects(tableToProjects); + +cacheController.clearCacheForCubeMigration(request); + +assertEquals(2018, cubeDescManager.getCubeDesc(CUBENAME).getRetentionRange()); +assertEquals(signature, cubeDescManager.getCubeDesc(CUBENAME).getSignature()); +assertNotEquals(uuid, cubeDescManager.getCubeDesc(CUBENAME).getUuid()); +} + }
kylin git commit: KYLIN-2672 Add UT
Repository: kylin Updated Branches: refs/heads/KYLIN-2672 b8105db9e -> 0b3938517 KYLIN-2672 Add UT Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/0b393851 Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/0b393851 Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/0b393851 Branch: refs/heads/KYLIN-2672 Commit: 0b393851718a17d3cae470e67e628d69cabf4ad8 Parents: b8105db Author: kangkaisenAuthored: Fri Feb 9 15:53:02 2018 +0800 Committer: kangkaisen Committed: Fri Feb 9 15:53:56 2018 +0800 -- .../rest/controller/CacheControllerTest.java| 54 +++- 1 file changed, 53 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/kylin/blob/0b393851/server/src/test/java/org/apache/kylin/rest/controller/CacheControllerTest.java -- diff --git a/server/src/test/java/org/apache/kylin/rest/controller/CacheControllerTest.java b/server/src/test/java/org/apache/kylin/rest/controller/CacheControllerTest.java index c2e21cc..3466a36 100644 --- a/server/src/test/java/org/apache/kylin/rest/controller/CacheControllerTest.java +++ b/server/src/test/java/org/apache/kylin/rest/controller/CacheControllerTest.java @@ -19,7 +19,17 @@ package org.apache.kylin.rest.controller; import java.io.IOException; +import java.util.HashMap; +import java.util.Map; +import org.apache.kylin.common.KylinConfig; +import org.apache.kylin.common.persistence.JsonSerializer; +import org.apache.kylin.common.persistence.Serializer; +import org.apache.kylin.cube.CubeDescManager; +import org.apache.kylin.cube.model.CubeDesc; +import org.apache.kylin.metadata.model.DataModelDesc; +import org.apache.kylin.metadata.model.TableRef; +import org.apache.kylin.rest.request.CubeMigrationRequest; import org.apache.kylin.rest.service.CacheService; import org.apache.kylin.rest.service.ServiceTestBase; import org.junit.Before; @@ -27,6 +37,9 @@ import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotEquals; + /** * @author shaoshi */ @@ -48,7 +61,46 @@ public class CacheControllerTest extends ServiceTestBase { @Test public void testBasics() throws IOException { - cacheController.wipeCache("cube_desc", "drop", "test_kylin_cube_with_slr_desc"); } + +@Test +public void testClearCacheForCubeMigration() throws IOException { +KylinConfig config = KylinConfig.getInstanceFromEnv(); +String CUBENAME = "test_kylin_cube_without_slr_desc"; + +CubeDescManager cubeDescManager = CubeDescManager.getInstance(config); +CubeDesc cubeDesc = cubeDescManager.getCubeDesc(CUBENAME); +DataModelDesc modelDesc = cubeDesc.getModel(); +Map tableToProjects = new HashMap<>(); +for (TableRef tableRef : modelDesc.getAllTables()) { +tableToProjects.put(tableRef.getTableIdentity(), tableRef.getTableDesc().getProject()); +} + +String uuid = cubeDesc.getUuid(); +String signature = cubeDesc.getSignature(); + +assertEquals(cubeDesc.getRetentionRange(), 0); + +//update cubeDesc +cubeDesc.setRetentionRange(2018); +cubeDesc.updateRandomUuid(); + +//directly update metadata in store to simulate cube migration +Serializer cubeDescSerializer = new JsonSerializer(CubeDesc.class); +getStore().putResource(cubeDesc.getResourcePath(), cubeDesc, cubeDescSerializer); + +CubeMigrationRequest request = new CubeMigrationRequest(); +request.setCube(cubeDesc.getName()); +request.setModel(modelDesc.getName()); +request.setProject(modelDesc.getProject()); +request.setTableToProjects(tableToProjects); + +cacheController.clearCacheForCubeMigration(request); + +assertEquals(2018, cubeDescManager.getCubeDesc(CUBENAME).getRetentionRange()); +assertEquals(signature, cubeDescManager.getCubeDesc(CUBENAME).getSignature()); +assertNotEquals(uuid, cubeDescManager.getCubeDesc(CUBENAME).getUuid()); +} + }