diff --git a/dbmigration/source/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationDataSource.java b/dbmigration/sourceTest/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationDataSource.java
similarity index 100%
rename from dbmigration/source/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationDataSource.java
rename to dbmigration/sourceTest/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationDataSource.java
diff --git a/dbmigration/source/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationDataSourceFactory.java b/dbmigration/sourceTest/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationDataSourceFactory.java
similarity index 100%
rename from dbmigration/source/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationDataSourceFactory.java
rename to dbmigration/sourceTest/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationDataSourceFactory.java
diff --git a/dbmigration/source/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationTestAbstract.java b/dbmigration/sourceTest/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationTestAbstract.java
similarity index 76%
rename from dbmigration/source/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationTestAbstract.java
rename to dbmigration/sourceTest/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationTestAbstract.java
index 4e7eafe3929bb10a384c5dfc30f42d3bbcd3bf2f..57ae7d686acb4aca8ff7b128ccbc485f78f0a8c5 100644
--- a/dbmigration/source/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationTestAbstract.java
+++ b/dbmigration/sourceTest/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationTestAbstract.java
@@ -42,6 +42,8 @@ import ch.systemsx.cisd.dbmigration.postgresql.DumpPreparator;
 public abstract class SqlMigrationTestAbstract
 {
 
+    private static final int CHECK_NUMBER_OF_MIGRATIONS = 4;
+
     private File sqlScriptOutputDirectory;
 
     protected abstract String getSqlScriptInputDirectory();
@@ -57,61 +59,53 @@ public abstract class SqlMigrationTestAbstract
     @BeforeTest(alwaysRun = true)
     public void beforeTest() throws Exception
     {
-        File dir = new File(getSqlScriptOutputDirectory());
-        if (!dir.exists())
+        sqlScriptOutputDirectory = new File(getSqlScriptOutputDirectory());
+        if (!sqlScriptOutputDirectory.exists())
         {
-            dir.mkdir();
+            sqlScriptOutputDirectory.mkdir();
         }
     }
 
     @AfterTest(alwaysRun = true)
     public void afterTest() throws Exception
     {
-        File dir = new File(getSqlScriptOutputDirectory());
-        if (dir.exists())
+        if (sqlScriptOutputDirectory != null && sqlScriptOutputDirectory.exists())
         {
-            FileUtils.deleteDirectory(dir);
+            FileUtils.deleteDirectory(sqlScriptOutputDirectory);
         }
     }
 
-    public void test_migration(String firstVersion, String newestVersion) throws Exception
+    public void test_migration(String newestVersionString) throws Exception
     {
-        int firstVersionInt = Integer.valueOf(firstVersion);
-        int newestVersionInt = Integer.valueOf(newestVersion);
+        SqlMigrationVersion newestVersion = new SqlMigrationVersion(newestVersionString);
+        SqlMigrationVersion firstVersion =
+                new SqlMigrationVersion(newestVersion.getVersionInt() - CHECK_NUMBER_OF_MIGRATIONS);
 
         DatabaseConfigurationContext migrationContext = null;
         DatabaseConfigurationContext scratchContext = null;
 
         try
         {
-
+            // create first version of the migration database
             migrationContext = createMigrationDatabaseContext(true);
-            scratchContext = createScratchDatabaseContext();
-
-            // create first version of migration database
             DBMigrationEngine.createOrMigrateDatabaseAndGetScriptProvider(migrationContext,
-                    firstVersion);
+                    firstVersion.getVersionString());
 
+            // migrate the migration database to the newest version
             migrationContext.setCreateFromScratch(false);
+            DBMigrationEngine.createOrMigrateDatabaseAndGetScriptProvider(migrationContext,
+                    newestVersion.getVersionString());
+            dumpDatabaseSchema(migrationContext, getMigratedDatabaseSchemaFile());
 
-            for (int version = firstVersionInt + 1; version <= newestVersionInt; version++)
-            {
-                String versionStr = String.format("%03d", version);
-
-                // migrate to the next version
-                DBMigrationEngine.createOrMigrateDatabaseAndGetScriptProvider(migrationContext,
-                        versionStr);
-                dumpDatabaseSchema(migrationContext, getMigratedDatabaseSchemaFile());
-
-                // create next version from scratch
-                DBMigrationEngine.createOrMigrateDatabaseAndGetScriptProvider(scratchContext,
-                        versionStr);
-                dumpDatabaseSchema(scratchContext, getScratchDatabaseSchemaFile());
+            // create the scratch database with the newest version
+            scratchContext = createScratchDatabaseContext();
+            DBMigrationEngine.createOrMigrateDatabaseAndGetScriptProvider(scratchContext,
+                    newestVersion.getVersionString());
+            dumpDatabaseSchema(scratchContext, getScratchDatabaseSchemaFile());
 
-                // check whether migrated and scratch version are equal
-                assertDatabaseSchemasEqual(getMigratedDatabaseSchemaFile(),
-                        getScratchDatabaseSchemaFile());
-            }
+            // check migration and scratch databases are equal
+            assertDatabaseSchemasEqual(getMigratedDatabaseSchemaFile(),
+                    getScratchDatabaseSchemaFile());
 
         } finally
         {
diff --git a/dbmigration/sourceTest/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationVersion.java b/dbmigration/sourceTest/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationVersion.java
new file mode 100644
index 0000000000000000000000000000000000000000..10f5b79a88c4d3fd46e55cf8dd78fcf76c5b6814
--- /dev/null
+++ b/dbmigration/sourceTest/java/ch/systemsx/cisd/dbmigration/migration/SqlMigrationVersion.java
@@ -0,0 +1,72 @@
+/*
+ * Copyright 2011 ETH Zuerich, CISD
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package ch.systemsx.cisd.dbmigration.migration;
+
+/**
+ * @author pkupczyk
+ */
+public class SqlMigrationVersion
+{
+
+    private int versionInt;
+
+    public SqlMigrationVersion(String versionStr)
+    {
+        setVersionString(versionStr);
+    }
+
+    public SqlMigrationVersion(int versionInt)
+    {
+        setVersionInt(versionInt);
+    }
+
+    public String getVersionString()
+    {
+        return String.format("%03d", versionInt);
+    }
+
+    public int getVersionInt()
+    {
+        return versionInt;
+    }
+
+    private void setVersionString(String versionStr)
+    {
+        if (versionStr == null)
+        {
+            throw new IllegalArgumentException("Version was null");
+        }
+        try
+        {
+            setVersionInt(Integer.valueOf(versionStr));
+        } catch (NumberFormatException e)
+        {
+            throw new IllegalArgumentException("Version had incorrect format", e);
+        }
+
+    }
+
+    private void setVersionInt(int versionInt)
+    {
+        if (versionInt < 1)
+        {
+            throw new IllegalArgumentException("Version was < 1");
+        }
+        this.versionInt = versionInt;
+    }
+
+}
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SqlDataMigrationTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SqlDataMigrationTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..e21be7107d51aa95385d5e965e89af692a374689
--- /dev/null
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SqlDataMigrationTest.java
@@ -0,0 +1,106 @@
+/*
+ * Copyright 2007 ETH Zuerich, CISD
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package ch.systemsx.cisd.openbis.generic.server.dataaccess.db;
+
+import java.io.File;
+import java.io.FileFilter;
+import java.io.PrintWriter;
+
+import org.testng.annotations.Test;
+
+import ch.systemsx.cisd.common.db.ISqlScriptExecutor;
+import ch.systemsx.cisd.common.db.SqlUnitTestRunner;
+import ch.systemsx.cisd.dbmigration.DBMigrationEngine;
+import ch.systemsx.cisd.dbmigration.DatabaseConfigurationContext;
+import ch.systemsx.cisd.dbmigration.IDAOFactory;
+import ch.systemsx.cisd.dbmigration.migration.SqlMigrationDataSourceFactory;
+import ch.systemsx.cisd.dbmigration.postgresql.PostgreSQLDAOFactory;
+
+/**
+ * Test cases for database migration.
+ * 
+ * @author Franz-Josef Elmer
+ */
+public final class SqlDataMigrationTest
+{
+    private static final String ORIGINAL_SQL_SOURCE = "source/sql";
+
+    private static final String BASE_DATA_FOLDER_TEMPLATE = "sourceTest/sql/%s/";
+
+    private String getDataFolder(final DatabaseConfigurationContext context)
+    {
+        return String.format(BASE_DATA_FOLDER_TEMPLATE, context.getDatabaseEngineCode())
+                + DatabaseVersionHolder.getDatabaseVersion() + "/";
+    }
+
+    private String getTestDataFolder(final DatabaseConfigurationContext context)
+    {
+        return String.format(BASE_DATA_FOLDER_TEMPLATE, context.getDatabaseEngineCode())
+                + "test_database_for_migration/";
+    }
+
+    private IDAOFactory createDAOFactory(final DatabaseConfigurationContext configurationContext)
+    {
+        return new PostgreSQLDAOFactory(configurationContext);
+    }
+
+    @Test(groups =
+        { "slow" })
+    /* runs unit tests written in SQL. The tests should check if the migration went fine. */
+    public final void testMigration() throws Exception
+    {
+        final DatabaseConfigurationContext configurationContext =
+                DatabaseCreationUtil.createDatabaseConfigurationContext("test_migration");
+        final File migrationFolder =
+                new File(getDataFolder(configurationContext) + SqlUnitTestRunner.MIGRATION_FOLDER);
+        final File[] folders = migrationFolder.listFiles(new FileFilter()
+            {
+                public boolean accept(File pathname)
+                {
+                    return pathname.isDirectory() && pathname.getName().startsWith(".") == false;
+                }
+            });
+        if (folders != null && folders.length != 0)
+        {
+            for (final File folder : folders)
+            {
+                final String databaseVersion = folder.getName();
+                System.out.println("Test migration from database version " + databaseVersion
+                        + " to " + DatabaseVersionHolder.getDatabaseVersion());
+                try
+                {
+                    configurationContext.setCreateFromScratch(true);
+                    configurationContext.initDataSourceFactory(new SqlMigrationDataSourceFactory());
+                    configurationContext.setScriptFolder(getTestDataFolder(configurationContext));
+                    DBMigrationEngine.createOrMigrateDatabaseAndGetScriptProvider(
+                            configurationContext, databaseVersion);
+                    configurationContext.closeConnections();
+                    configurationContext.setCreateFromScratch(false);
+                    configurationContext.setScriptFolder(ORIGINAL_SQL_SOURCE);
+                    DBMigrationEngine.createOrMigrateDatabaseAndGetScriptProvider(
+                            configurationContext, DatabaseVersionHolder.getDatabaseVersion());
+                    final ISqlScriptExecutor executor =
+                            createDAOFactory(configurationContext).getSqlScriptExecutor();
+                    new SqlUnitTestRunner(executor, new PrintWriter(System.out, true)).run(folder);
+                } finally
+                {
+                    configurationContext.closeConnections();
+                }
+            }
+        }
+    }
+}
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SqlMigrationTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SqlMigrationTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..27dea2fd94d2f8f899d7636a39967f1f54f34806
--- /dev/null
+++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SqlMigrationTest.java
@@ -0,0 +1,50 @@
+/*
+ * Copyright 2011 ETH Zuerich, CISD
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package ch.systemsx.cisd.openbis.generic.server.dataaccess.db;
+
+import java.io.File;
+
+import org.testng.annotations.Test;
+
+import ch.systemsx.cisd.dbmigration.migration.SqlMigrationTestAbstract;
+
+/**
+ * @author pkupczyk
+ */
+public class SqlMigrationTest extends SqlMigrationTestAbstract
+{
+
+    @Test(groups =
+        { "slow" })
+    public void test_migration() throws Exception
+    {
+        test_migration(DatabaseVersionHolder.getDatabaseVersion());
+    }
+
+    @Override
+    protected String getSqlScriptInputDirectory()
+    {
+        return "source" + File.separator + "sql";
+    }
+
+    @Override
+    protected String getSqlScriptOutputDirectory()
+    {
+        return "targets" + File.separator + "unit-test-wd";
+    }
+
+}
diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SqlUnitMigrationTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SqlUnitMigrationTest.java
deleted file mode 100644
index a836709c26a707a2d78732ea0419a8380dcc600e..0000000000000000000000000000000000000000
--- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/SqlUnitMigrationTest.java
+++ /dev/null
@@ -1,362 +0,0 @@
-/*
- * Copyright 2007 ETH Zuerich, CISD
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package ch.systemsx.cisd.openbis.generic.server.dataaccess.db;
-
-import static org.testng.AssertJUnit.assertNotNull;
-
-import java.io.File;
-import java.io.FileFilter;
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.sql.SQLException;
-
-import javax.sql.DataSource;
-
-import org.hibernate.SessionFactory;
-import org.springframework.beans.factory.DisposableBean;
-import org.springframework.context.support.AbstractApplicationContext;
-import org.springframework.context.support.ClassPathXmlApplicationContext;
-import org.testng.AssertJUnit;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.Test;
-
-import cz.startnet.utils.pgdiff.PgDiff;
-import cz.startnet.utils.pgdiff.PgDiffArguments;
-
-import ch.systemsx.cisd.common.db.ISqlScriptExecutor;
-import ch.systemsx.cisd.common.db.SqlUnitTestRunner;
-import ch.systemsx.cisd.common.logging.LogInitializer;
-import ch.systemsx.cisd.dbmigration.DBMigrationEngine;
-import ch.systemsx.cisd.dbmigration.DatabaseConfigurationContext;
-import ch.systemsx.cisd.dbmigration.IDAOFactory;
-import ch.systemsx.cisd.dbmigration.IDataSourceFactory;
-import ch.systemsx.cisd.dbmigration.postgresql.DumpPreparator;
-import ch.systemsx.cisd.dbmigration.postgresql.PostgreSQLDAOFactory;
-
-/**
- * Test cases for database migration.
- * 
- * @author Franz-Josef Elmer
- */
-public final class SqlUnitMigrationTest
-{
-    private static final String ORIGINAL_SQL_SOURCE = "source/sql";
-
-    private static final String BASE_DATA_FOLDER_TEMPLATE = "sourceTest/sql/%s/";
-
-    private static final File unitTestRootDirectory = new File("targets" + File.separator
-            + "unit-test-wd");
-
-    private String getDataFolder(final DatabaseConfigurationContext context)
-    {
-        return String.format(BASE_DATA_FOLDER_TEMPLATE, context.getDatabaseEngineCode())
-                + DatabaseVersionHolder.getDatabaseVersion() + "/";
-    }
-
-    private String getTestDataFolder(final DatabaseConfigurationContext context)
-    {
-        return String.format(BASE_DATA_FOLDER_TEMPLATE, context.getDatabaseEngineCode())
-                + "test_database_for_migration/";
-    }
-
-    private static final class MyDataSource implements DataSource, DisposableBean
-    {
-        private final String driver;
-
-        private final String url;
-
-        private final String owner;
-
-        private final String password;
-
-        private Connection connection;
-
-        MyDataSource(final String driver, final String url, final String owner,
-                final String password)
-        {
-            this.driver = driver;
-            this.url = url;
-            this.owner = owner;
-            this.password = password;
-        }
-
-        public Connection getConnection() throws SQLException
-        {
-            if (connection != null && connection.isClosed() || connection == null)
-            {
-                try
-                {
-                    Class.forName(driver);
-                } catch (final ClassNotFoundException ex)
-                {
-                    throw new SQLException("Couldn't load driver " + driver);
-                }
-                final Connection c = DriverManager.getConnection(url, owner, password);
-                connection = c;
-            }
-            return connection;
-        }
-
-        public Connection getConnection(final String username, final String pw) throws SQLException
-        {
-            if (owner.equals(username) && password.equals(pw))
-            {
-                return getConnection();
-            }
-            throw new SQLException("Forbidden");
-        }
-
-        public int getLoginTimeout() throws SQLException
-        {
-            return 0;
-        }
-
-        public void setLoginTimeout(final int timeout) throws SQLException
-        {
-            throw new UnsupportedOperationException("setLoginTimeout");
-        }
-
-        public PrintWriter getLogWriter()
-        {
-            throw new UnsupportedOperationException("getLogWriter");
-        }
-
-        public void setLogWriter(final PrintWriter pw) throws SQLException
-        {
-            throw new UnsupportedOperationException("setLogWriter");
-        }
-
-        public void destroy() throws SQLException
-        {
-            if (connection != null)
-            {
-                connection.close();
-                connection = null;
-            }
-        }
-
-        @Override
-        public String toString()
-        {
-            return "MyDataSource[" + driver + ", " + url + ", " + owner + "]";
-        }
-
-        // NOTE: the following methods are needed because we compile with JDK 6 on Hudson
-        @SuppressWarnings("unused")
-        public boolean isWrapperFor(Class<?> arg0) throws SQLException
-        {
-            return false;
-        }
-
-        @SuppressWarnings("unused")
-        public <T> T unwrap(Class<T> arg0) throws SQLException
-        {
-            return null;
-        }
-    }
-
-    private static final IDataSourceFactory DATA_SOURCE_FACTORY = new IDataSourceFactory()
-        {
-            public DataSource createDataSource(String driver, String url, String owner,
-                    String password)
-            {
-                return new MyDataSource(driver, url, owner, password);
-            }
-
-            public void setMaxActive(int maxActive)
-            {
-            }
-
-            public void setMaxIdle(int maxIdle)
-            {
-            }
-
-            public void setMaxWait(long maxWait)
-            {
-            }
-        };
-
-    @BeforeClass(alwaysRun = true)
-    public void beforeClass() throws Exception
-    {
-        LogInitializer.init();
-    }
-
-    private final static AbstractApplicationContext createBeanFactoryFrom(
-            final String... contextFileNames)
-    {
-        System.setProperty("database.kind", "test_migration");
-        System.setProperty("database.create-from-scratch", "false");
-        System.setProperty("authorization-component-factory", "no-authorization");
-        System.setProperty("script-folder", "source");
-        System.setProperty("hibernate.search.index-mode", "NO_INDEX");
-        final ClassPathXmlApplicationContext applicationContext =
-                new ClassPathXmlApplicationContext(contextFileNames, true);
-        return applicationContext;
-    }
-
-    private IDAOFactory createDAOFactory(final DatabaseConfigurationContext configurationContext)
-    {
-        return new PostgreSQLDAOFactory(configurationContext);
-    }
-
-    @Test(groups =
-        { "slow" })
-    /* runs unit tests written in SQL. The tests should check if the migration went fine. */
-    public final void testMigration() throws Exception
-    {
-        final DatabaseConfigurationContext configurationContext =
-                DatabaseCreationUtil.createDatabaseConfigurationContext("test_migration");
-        final File migrationFolder =
-                new File(getDataFolder(configurationContext) + SqlUnitTestRunner.MIGRATION_FOLDER);
-        final File[] folders = migrationFolder.listFiles(new FileFilter()
-            {
-                public boolean accept(File pathname)
-                {
-                    return pathname.isDirectory() && pathname.getName().startsWith(".") == false;
-                }
-            });
-        if (folders != null && folders.length != 0)
-        {
-            for (final File folder : folders)
-            {
-                final String databaseVersion = folder.getName();
-                System.out.println("Test migration from database version " + databaseVersion
-                        + " to " + DatabaseVersionHolder.getDatabaseVersion());
-                try
-                {
-                    configurationContext.setCreateFromScratch(true);
-                    configurationContext.initDataSourceFactory(DATA_SOURCE_FACTORY);
-                    configurationContext.setScriptFolder(getTestDataFolder(configurationContext));
-                    DBMigrationEngine.createOrMigrateDatabaseAndGetScriptProvider(
-                            configurationContext, databaseVersion);
-                    configurationContext.closeConnections();
-                    configurationContext.setCreateFromScratch(false);
-                    configurationContext.setScriptFolder(ORIGINAL_SQL_SOURCE);
-                    DBMigrationEngine.createOrMigrateDatabaseAndGetScriptProvider(
-                            configurationContext, DatabaseVersionHolder.getDatabaseVersion());
-                    final ISqlScriptExecutor executor =
-                            createDAOFactory(configurationContext).getSqlScriptExecutor();
-                    new SqlUnitTestRunner(executor, new PrintWriter(System.out, true)).run(folder);
-                } finally
-                {
-                    configurationContext.closeConnections();
-                }
-            }
-        }
-    }
-
-    @Test(groups =
-        { "slow" })
-    /*
-     * This test checks if the schema of a current database version is equal to the one which was
-     * migrated from the version 18 to the current version with existing migration scripts. If it is
-     * not a case, then the test will fail and will show what is missing in the last migration
-     * script. Note that this test can be used to generate new migration scripts! When you introduce
-     * a new database version, just create an empty migration script and run this test.
-     */
-    public final void testMigrationFrom034() throws Exception
-    {
-        final String databaseKind = "test_migration";
-        final DatabaseConfigurationContext configurationContext =
-                createDatabaseContext(databaseKind);
-        AbstractApplicationContext applicationContext = null;
-        unitTestRootDirectory.mkdirs();
-        File migratedSchemaFile = null;
-        try
-        {
-            final String initialVersion = "034";
-            DBMigrationEngine.createOrMigrateDatabaseAndGetScriptProvider(configurationContext,
-                    initialVersion);
-            applicationContext = createBeanFactoryFrom("applicationContext.xml");
-            final SessionFactory sessionFactory =
-                    (SessionFactory) applicationContext.getBean("hibernate-session-factory");
-            assertNotNull(sessionFactory);
-            // dump the migrated database schema to the file
-            migratedSchemaFile = new File(unitTestRootDirectory, "migratedDatabaseSchema.sql");
-            dumpSchema(configurationContext, migratedSchemaFile);
-        } finally
-        {
-            configurationContext.closeConnections();
-            if (applicationContext != null)
-            {
-                applicationContext.close();
-            }
-        }
-        // need to close connections before dumping schema
-        final File originalSchemaFile = dumpOriginalSchema();
-
-        final String schemasDelta = compareSchemas(migratedSchemaFile, originalSchemaFile);
-        final String errorMsg =
-                "The migrated schema is not identical to the original one. "
-                        + "Consider attaching following script to the migration file.";
-        AssertJUnit.assertEquals(errorMsg, "", schemasDelta);
-    }
-
-    // create an original database from scratch and dump its schema to the file
-    private static File dumpOriginalSchema()
-    {
-        final DatabaseConfigurationContext originalDatabaseContext =
-                createDatabaseContext("test_migration_original");
-        try
-        {
-            originalDatabaseContext.setScriptFolder(ORIGINAL_SQL_SOURCE);
-            DBMigrationEngine.createOrMigrateDatabaseAndGetScriptProvider(originalDatabaseContext,
-                    DatabaseVersionHolder.getDatabaseVersion());
-            final File originalSchemaFile =
-                    new File(unitTestRootDirectory, "currentDatabaseSchema.sql");
-            dumpSchema(originalDatabaseContext, originalSchemaFile);
-            return originalSchemaFile;
-        } finally
-        {
-            originalDatabaseContext.closeConnections();
-        }
-    }
-
-    private static String compareSchemas(final File currentSchemaFile, final File expectedSchemaFile)
-    {
-        final StringWriter writer = new StringWriter();
-        final PgDiffArguments arguments = new PgDiffArguments();
-        arguments.setOldDumpFile(currentSchemaFile.getAbsolutePath());
-        arguments.setNewDumpFile(expectedSchemaFile.getAbsolutePath());
-        arguments.setIgnoreFunctionWhitespace(true);
-        arguments.setIgnoreStartWith(true);
-        PgDiff.createDiff(new PrintWriter(writer), arguments);
-        final String delta = writer.toString();
-        return delta == null ? "" : delta;
-    }
-
-    private static DatabaseConfigurationContext createDatabaseContext(final String databaseKind)
-    {
-        final DatabaseConfigurationContext configurationContext =
-                DatabaseCreationUtil.createDatabaseConfigurationContext(databaseKind);
-        configurationContext.setCreateFromScratch(true);
-        configurationContext.initDataSourceFactory(DATA_SOURCE_FACTORY);
-        return configurationContext;
-    }
-
-    private static void dumpSchema(final DatabaseConfigurationContext configurationContext,
-            final File migratedSchemaFile)
-    {
-        final boolean ok =
-                DumpPreparator.createDatabaseSchemaDump(configurationContext.getDatabaseName(),
-                        migratedSchemaFile);
-        AssertJUnit.assertTrue("dump of db failed: " + configurationContext.getDatabaseName(), ok);
-    }
-}
diff --git a/screening/.classpath b/screening/.classpath
index feeaf400b2f5bbfb67e144836b1483cf3c8be2ec..6f019629832df744e6cf131343703c74ba0bfc0c 100644
--- a/screening/.classpath
+++ b/screening/.classpath
@@ -43,7 +43,6 @@
 	<classpathentry kind="lib" path="/libraries/bioformats/bioformats.jar" sourcepath="/libraries/bioformats/bioformats_src.zip"/>
 	<classpathentry kind="lib" path="/libraries/cisd-image_readers/cisd-image_readers-bioformats.jar" sourcepath="/image_readers/source/java"/>
 	<classpathentry kind="lib" path="/libraries/cisd-image_readers/cisd-image_readers.jar" sourcepath="/image_readers/source/java"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.launching.macosx.MacOSXType/JVM 1.6"/>
 	<classpathentry kind="lib" path="/libraries/commons-collections/commons-collections.jar" sourcepath="/libraries/commons-collections/src.jar"/>
 	<classpathentry kind="lib" path="/libraries/junit/junit.jar" sourcepath="/libraries/junit/src.jar"/>
 	<classpathentry kind="lib" path="/libraries/gwt-image-loader/gwt-image-loader.jar"/>
@@ -52,5 +51,6 @@
 	<classpathentry kind="lib" path="/libraries/gwt2.4/validation-api-1.0.0.GA-sources.jar"/>
 	<classpathentry kind="lib" path="/libraries/gwt2.4/validation-api-1.0.0.GA.jar"/>
 	<classpathentry kind="lib" path="/libraries/apgdiff/apgdiff.jar" sourcepath="/libraries/apgdiff/src.zip"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.launching.macosx.MacOSXType/JDK 1.6"/>
 	<classpathentry kind="output" path="targets/www/WEB-INF/classes"/>
 </classpath>
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/dataaccess/db/ScreeningSqlMigrationTest.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/dataaccess/db/ScreeningSqlMigrationTest.java
index 733dd0a5f291dc1cb39d4cb293c57eb15785f95d..c769e1c3345a5464a810876897f109a33fe34330 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/dataaccess/db/ScreeningSqlMigrationTest.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/dataaccess/db/ScreeningSqlMigrationTest.java
@@ -24,7 +24,7 @@ import ch.systemsx.cisd.dbmigration.migration.SqlMigrationTestAbstract;
 import ch.systemsx.cisd.openbis.dss.etl.ImagingDatabaseVersionHolder;
 
 /**
- * Test cases for database migration.
+ * Test cases for screening database migration.
  * 
  * @author Piotr Kupczyk
  */
@@ -36,8 +36,7 @@ public class ScreeningSqlMigrationTest extends SqlMigrationTestAbstract
     public void test_migration()
             throws Exception
     {
-        test_migration("001",
-                new ImagingDatabaseVersionHolder().getDatabaseVersion());
+        test_migration(new ImagingDatabaseVersionHolder().getDatabaseVersion());
     }
 
     @Override