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 {