You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@usergrid.apache.org by sf...@apache.org on 2015/06/25 18:57:49 UTC
incubator-usergrid git commit: add migration order tests
Repository: incubator-usergrid
Updated Branches:
refs/heads/two-dot-o-dev cb7374629 -> 49cf0d160
add migration order tests
Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/49cf0d16
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/49cf0d16
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/49cf0d16
Branch: refs/heads/two-dot-o-dev
Commit: 49cf0d16049e23965878f5888ddec7d675ad1383
Parents: cb73746
Author: Shawn Feldman <sf...@apache.org>
Authored: Thu Jun 25 10:57:46 2015 -0600
Committer: Shawn Feldman <sf...@apache.org>
Committed: Thu Jun 25 10:57:46 2015 -0600
----------------------------------------------------------------------
.../data/DataMigrationManagerImpl.java | 3 +
.../data/DataMigrationManagerImplTest.java | 63 ++++++++++++++++++++
2 files changed, 66 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/49cf0d16/stack/corepersistence/common/src/main/java/org/apache/usergrid/persistence/core/migration/data/DataMigrationManagerImpl.java
----------------------------------------------------------------------
diff --git a/stack/corepersistence/common/src/main/java/org/apache/usergrid/persistence/core/migration/data/DataMigrationManagerImpl.java b/stack/corepersistence/common/src/main/java/org/apache/usergrid/persistence/core/migration/data/DataMigrationManagerImpl.java
index 0645a60..3b5ba70 100644
--- a/stack/corepersistence/common/src/main/java/org/apache/usergrid/persistence/core/migration/data/DataMigrationManagerImpl.java
+++ b/stack/corepersistence/common/src/main/java/org/apache/usergrid/persistence/core/migration/data/DataMigrationManagerImpl.java
@@ -173,6 +173,8 @@ public class DataMigrationManagerImpl implements DataMigrationManager {
StatusCode( final int status ) {this.status = status;}
}
+ public List<MigrationPlugin> getExecutionOrder(){return executionOrder;}
+
private final class CassandraProgressObserver implements ProgressObserver {
@@ -249,6 +251,7 @@ public class DataMigrationManagerImpl implements DataMigrationManager {
public boolean isFailed() {
return failed;
}
+
}
private final static class MigrationPluginComparator implements Comparator<MigrationPlugin> {
http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/49cf0d16/stack/corepersistence/common/src/test/java/org/apache/usergrid/persistence/core/migration/data/DataMigrationManagerImplTest.java
----------------------------------------------------------------------
diff --git a/stack/corepersistence/common/src/test/java/org/apache/usergrid/persistence/core/migration/data/DataMigrationManagerImplTest.java b/stack/corepersistence/common/src/test/java/org/apache/usergrid/persistence/core/migration/data/DataMigrationManagerImplTest.java
index c2eef3f..bbcd447 100644
--- a/stack/corepersistence/common/src/test/java/org/apache/usergrid/persistence/core/migration/data/DataMigrationManagerImplTest.java
+++ b/stack/corepersistence/common/src/test/java/org/apache/usergrid/persistence/core/migration/data/DataMigrationManagerImplTest.java
@@ -102,7 +102,70 @@ public class DataMigrationManagerImplTest {
verify( plugin2 ).run( any( ProgressObserver.class ) );
}
+ @Test
+ public void test2PluginsPhaseOrder() throws MigrationException {
+
+ final Set<MigrationPlugin> plugins = new HashSet<>();
+
+ MigrationPlugin plugin1 = mock( MigrationPlugin.class );
+ when( plugin1.getPhase() ).thenReturn( PluginPhase.BOOTSTRAP );
+ when( plugin1.getName() ).thenReturn( "plugin2a" );
+
+ MigrationPlugin plugin1a = mock( MigrationPlugin.class );
+ when( plugin1a.getPhase() ).thenReturn( PluginPhase.BOOTSTRAP );
+ when( plugin1a.getName() ).thenReturn( "plugin2" );
+
+ MigrationPlugin plugin2 = mock( MigrationPlugin.class );
+ when( plugin2.getPhase() ).thenReturn( PluginPhase.MIGRATE );
+
+ when( plugin2.getName() ).thenReturn( "plugin1" );
+
+ plugins.add( plugin1 );
+ plugins.add( plugin2 );
+ plugins.add( plugin1a);
+
+
+ final MigrationInfoSerialization migrationInfoSerialization = mock( MigrationInfoSerialization.class );
+
+
+ DataMigrationManagerImpl migrationManager = new DataMigrationManagerImpl( plugins, migrationInfoSerialization );
+
+
+ assertTrue(migrationManager.getExecutionOrder().get(0).getName() == "plugin2");
+ assertTrue(migrationManager.getExecutionOrder().get(1).getName() == "plugin2a");
+ assertTrue(migrationManager.getExecutionOrder().get(2).getName() == "plugin1");
+ }
+
+ @Test
+ public void test2PluginsNameOrder() throws MigrationException {
+
+ final Set<MigrationPlugin> plugins = new HashSet<>();
+
+ MigrationPlugin plugin1 = mock( MigrationPlugin.class );
+ when( plugin1.getPhase() ).thenReturn( PluginPhase.MIGRATE );
+
+ when( plugin1.getName() ).thenReturn( "plugin2" );
+
+ MigrationPlugin plugin2 = mock( MigrationPlugin.class );
+ when( plugin2.getPhase() ).thenReturn( PluginPhase.MIGRATE );
+
+ when( plugin2.getName() ).thenReturn( "plugin1" );
+
+ plugins.add( plugin1 );
+ plugins.add( plugin2 );
+
+
+ final MigrationInfoSerialization migrationInfoSerialization = mock( MigrationInfoSerialization.class );
+
+
+ DataMigrationManagerImpl migrationManager = new DataMigrationManagerImpl( plugins, migrationInfoSerialization );
+
+
+ assertTrue(migrationManager.getExecutionOrder().get(0).getName() == "plugin1");
+ assertTrue(migrationManager.getExecutionOrder().get(1).getName() == "plugin2");
+
+ }
@Test
public void testRunning() throws MigrationException {