blob: 6823e42347761aea1f7aa1d8a1057bb8d49dbcb0 [file] [log] [blame]
package org.eclipse.jst.j2ee.flexible.project.fvtests;
import junit.framework.Test;
import junit.framework.TestCase;
import org.eclipse.core.commands.ExecutionException;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
import org.eclipse.jst.common.jdt.internal.integration.IJavaProjectCreationProperties;
import org.eclipse.jst.common.jdt.internal.integration.IJavaProjectMigrationDataModelProperties;
import org.eclipse.jst.common.jdt.internal.integration.JavaProjectCreationDataModelProvider;
import org.eclipse.jst.common.jdt.internal.integration.JavaProjectMigrationDataModelProvider;
import org.eclipse.wst.common.frameworks.datamodel.DataModelFactory;
import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
import org.eclipse.wst.common.tests.SimpleTestSuite;
public class ProjectMigrationTest extends TestCase {
public static String DEFAULT_PROJECT_NAME = "TestJavaProj";
public ProjectMigrationTest(String name) {
super(name);
}
public ProjectMigrationTest() {
super();
}
public static Test suite() {
return new SimpleTestSuite(ProjectMigrationTest.class);
}
public void testProjectMigration() throws Exception {
runAll();
}
private void createJavaProject(IProgressMonitor monitor) throws CoreException {
IProject project = ProjectUtilities.getProject(DEFAULT_PROJECT_NAME);
if( project.exists()){
project.delete( true, true, null );
}
IDataModel model = DataModelFactory.createDataModel(new JavaProjectCreationDataModelProvider());
model.setProperty(IJavaProjectCreationProperties.PROJECT_NAME, DEFAULT_PROJECT_NAME);
String[] srcFolder = new String[2];
srcFolder[0] = new String("Src1");
srcFolder[1] = new String("Src2");
model.setProperty(IJavaProjectCreationProperties.SOURCE_FOLDERS, srcFolder);
try {
model.getDefaultOperation().execute(monitor, null);
} catch (ExecutionException e) {
e.printStackTrace();
}
}
private IPath getOutputPath(IProject project) {
String outputLocation = "bin";
return project.getFullPath().append(outputLocation);
}
public void runAll(){
try {
IProgressMonitor monitor = new NullProgressMonitor();
createJavaProject(monitor);
migrateProject(DEFAULT_PROJECT_NAME);
}
catch (Exception e) {
e.printStackTrace();
}
}
private void migrateProject(String projectName){
IDataModel model = DataModelFactory.createDataModel(new JavaProjectMigrationDataModelProvider());
model.setProperty( IJavaProjectMigrationDataModelProperties.PROJECT_NAME, projectName);
try {
model.getDefaultOperation().execute( null, null );
}
catch (Exception e) {
e.printStackTrace();
}
}
}