diff --git a/core/org.eclipse.cdt.core.tests/failures/org/eclipse/cdt/core/model/failedTests/CModelElementsFailedTests.java b/core/org.eclipse.cdt.core.tests/failures/org/eclipse/cdt/core/model/failedTests/CModelElementsFailedTests.java
index b916bd4d086..53f63ae7f28 100644
--- a/core/org.eclipse.cdt.core.tests/failures/org/eclipse/cdt/core/model/failedTests/CModelElementsFailedTests.java
+++ b/core/org.eclipse.cdt.core.tests/failures/org/eclipse/cdt/core/model/failedTests/CModelElementsFailedTests.java
@@ -19,7 +19,6 @@ import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
-import org.eclipse.cdt.core.CCProjectNature;
import org.eclipse.cdt.core.model.ICElement;
import org.eclipse.cdt.core.model.ICProject;
import org.eclipse.cdt.core.model.INamespace;
@@ -27,12 +26,8 @@ import org.eclipse.cdt.core.model.IStructure;
import org.eclipse.cdt.internal.core.model.CElement;
import org.eclipse.cdt.internal.core.model.TranslationUnit;
import org.eclipse.cdt.testplugin.CProjectHelper;
-import org.eclipse.core.internal.resources.ResourceException;
import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Path;
@@ -63,7 +58,7 @@ public class CModelElementsFailedTests extends TestCase {
monitor = new NullProgressMonitor();
String pluginRoot=org.eclipse.core.runtime.Platform.getPlugin("org.eclipse.cdt.core.tests").find(new Path("/")).getFile();
- fCProject= CProjectHelper.createCProject("TestProject1", "bin");
+ fCProject= CProjectHelper.createCCProject("TestProject1", "bin");
headerFile = fCProject.getProject().getFile("CModelElementsTest.h");
if (!headerFile.exists()) {
try{
@@ -73,27 +68,10 @@ public class CModelElementsFailedTests extends TestCase {
e.printStackTrace();
}
}
- if (!fCProject.getProject().hasNature(CCProjectNature.CC_NATURE_ID)) {
- addNatureToProject(fCProject.getProject(), CCProjectNature.CC_NATURE_ID, null);
- }
- }
-
- private static void addNatureToProject(IProject proj, String natureId, IProgressMonitor monitor) throws CoreException {
- IProjectDescription description = proj.getDescription();
- String[] prevNatures= description.getNatureIds();
- String[] newNatures= new String[prevNatures.length + 1];
- System.arraycopy(prevNatures, 0, newNatures, 0, prevNatures.length);
- newNatures[prevNatures.length]= natureId;
- description.setNatureIds(newNatures);
- proj.setDescription(description, monitor);
}
protected void tearDown() {
- try{
- CProjectHelper.delete(fCProject);
- }
- catch (ResourceException e) {}
- catch (CoreException e) {}
+ CProjectHelper.delete(fCProject);
}
public void testBug36379() {
diff --git a/core/org.eclipse.cdt.core.tests/indexer/org/eclipse/cdt/core/indexer/tests/DependencyTests.java b/core/org.eclipse.cdt.core.tests/indexer/org/eclipse/cdt/core/indexer/tests/DependencyTests.java
index 1738ead84fe..e022449bcf1 100644
--- a/core/org.eclipse.cdt.core.tests/indexer/org/eclipse/cdt/core/indexer/tests/DependencyTests.java
+++ b/core/org.eclipse.cdt.core.tests/indexer/org/eclipse/cdt/core/indexer/tests/DependencyTests.java
@@ -19,8 +19,8 @@ import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
-import org.eclipse.cdt.core.CCProjectNature;
import org.eclipse.cdt.core.CCorePlugin;
+import org.eclipse.cdt.core.model.ICProject;
import org.eclipse.cdt.core.search.BasicSearchResultCollector;
import org.eclipse.cdt.core.search.ICSearchConstants;
import org.eclipse.cdt.core.search.ICSearchPattern;
@@ -34,18 +34,15 @@ import org.eclipse.cdt.internal.core.search.PatternSearchJob;
import org.eclipse.cdt.internal.core.search.indexing.IndexManager;
import org.eclipse.cdt.internal.core.search.matching.CSearchPattern;
import org.eclipse.cdt.internal.core.sourcedependency.DependencyQueryJob;
-import org.eclipse.cdt.make.core.MakeCorePlugin;
-import org.eclipse.core.internal.resources.ResourceException;
+import org.eclipse.cdt.testplugin.CProjectHelper;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRoot;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Path;
import org.eclipse.core.runtime.Platform;
@@ -116,11 +113,25 @@ import org.eclipse.core.runtime.Platform;
if (testProject.exists()){
try {
testProject.delete(true,monitor);
- } catch (ResourceException e) {
} catch (CoreException e) {
+ fail(getMessage(e.getStatus()));
}
}
}
+
+ private String getMessage(IStatus status) {
+ StringBuffer message = new StringBuffer("[");
+ message.append(status.getMessage());
+ if (status.isMultiStatus()) {
+ IStatus children[] = status.getChildren();
+ for (int i = 0; i < children.length; i++) {
+ message.append(getMessage(children[i]));
+ }
+ }
+ message.append("]");
+ return message.toString();
+ }
+
public void testDependencyTree() throws Exception{
//Add a file to the project
importFile("c.h","resources/dependency/c.h");
@@ -614,7 +625,8 @@ import org.eclipse.core.runtime.Platform;
fail(e1.getMessage());
}
writer.close();
-
+ buff.close();
+
FileInputStream buff2 = new FileInputStream(tempUtilFile);
tempFile.setContents(buff2,true,false,null);
tempFile.refreshLocal(IResource.DEPTH_INFINITE, null);
@@ -646,40 +658,8 @@ import org.eclipse.core.runtime.Platform;
*/
private IProject createProject(String projectName) throws CoreException
{
- IWorkspaceRoot root= ResourcesPlugin.getWorkspace().getRoot();
- IProject project= root.getProject(projectName);
- IProject cproject = null;
- try{
- if (!project.exists()) {
- project.create(null);
- } else {
- project.refreshLocal(IResource.DEPTH_INFINITE, null);
- }
- if (!project.isOpen()) {
- project.open(null);
- }
-
- //Fill out a project description
- IPath defaultPath = Platform.getLocation();
- IPath newPath = project.getFullPath();
- if (defaultPath.equals(newPath))
- newPath = null;
- IWorkspace workspace = ResourcesPlugin.getWorkspace();
- IProjectDescription description = workspace.newProjectDescription(project.getName());
- description.setLocation(newPath);
- //Create the project
- cproject = CCorePlugin.getDefault().createCProject(description,project,monitor,MakeCorePlugin.MAKE_PROJECT_ID); //.getCoreModel().create(project);
-
- if( !cproject.hasNature(CCProjectNature.CC_NATURE_ID) ){
- addNatureToProject(cproject, CCProjectNature.CC_NATURE_ID, null);
- }
- }
- catch (CoreException e){
- cproject = project;
- cproject.open(null);
- }
-
- return cproject;
+ ICProject cproject = CProjectHelper.createCCProject(projectName, "bin");
+ return cproject.getProject();
}
@@ -698,14 +678,4 @@ import org.eclipse.core.runtime.Platform;
return file;
}
-
- private void addNatureToProject(IProject proj, String natureId, IProgressMonitor monitor) throws CoreException {
- IProjectDescription description = proj.getDescription();
- String[] prevNatures= description.getNatureIds();
- String[] newNatures= new String[prevNatures.length + 1];
- System.arraycopy(prevNatures, 0, newNatures, 0, prevNatures.length);
- newNatures[prevNatures.length]= natureId;
- description.setNatureIds(newNatures);
- proj.setDescription(description, monitor);
- }
}
diff --git a/core/org.eclipse.cdt.core.tests/indexer/org/eclipse/cdt/core/indexer/tests/IndexManagerTests.java b/core/org.eclipse.cdt.core.tests/indexer/org/eclipse/cdt/core/indexer/tests/IndexManagerTests.java
index dae89a84b52..f20026de88b 100644
--- a/core/org.eclipse.cdt.core.tests/indexer/org/eclipse/cdt/core/indexer/tests/IndexManagerTests.java
+++ b/core/org.eclipse.cdt.core.tests/indexer/org/eclipse/cdt/core/indexer/tests/IndexManagerTests.java
@@ -19,29 +19,23 @@ import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
-import org.eclipse.cdt.core.CCProjectNature;
import org.eclipse.cdt.core.CCorePlugin;
+import org.eclipse.cdt.core.model.ICProject;
import org.eclipse.cdt.internal.core.index.IEntryResult;
import org.eclipse.cdt.internal.core.index.IIndex;
import org.eclipse.cdt.internal.core.index.IQueryResult;
import org.eclipse.cdt.internal.core.index.impl.IFileDocument;
import org.eclipse.cdt.internal.core.search.indexing.IIndexConstants;
import org.eclipse.cdt.internal.core.search.indexing.IndexManager;
-import org.eclipse.cdt.make.core.MakeCorePlugin;
-import org.eclipse.core.internal.resources.ResourceException;
+import org.eclipse.cdt.testplugin.CProjectHelper;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
/**
* @author bgheorgh
@@ -89,15 +83,28 @@ public class IndexManagerTests extends TestCase {
} catch (Exception e1) {
}
//Delete project
- if (testProject.exists()){
+ if (testProject.exists()) {
try {
- testProject.delete(true,monitor);
- } catch (ResourceException e) {
+ testProject.delete(true, monitor);
} catch (CoreException e) {
+ fail(getMessage(e.getStatus()));
}
}
}
+ private String getMessage(IStatus status) {
+ StringBuffer message = new StringBuffer("[");
+ message.append(status.getMessage());
+ if (status.isMultiStatus()) {
+ IStatus children[] = status.getChildren();
+ for (int i = 0; i < children.length; i++) {
+ message.append(getMessage(children[i]));
+ }
+ }
+ message.append("]");
+ return message.toString();
+ }
+
public static Test suite() {
TestSuite suite = new TestSuite(IndexManagerTests.class.getName());
@@ -117,43 +124,9 @@ public class IndexManagerTests extends TestCase {
/*
* Utils
*/
- private IProject createProject(String projectName) throws CoreException
- {
- IWorkspaceRoot root= ResourcesPlugin.getWorkspace().getRoot();
- IProject project= root.getProject(projectName);
- IProject cproject = null;
- try{
- if (!project.exists()) {
- project.create(null);
- } else {
- project.refreshLocal(IResource.DEPTH_INFINITE, null);
- }
- if (!project.isOpen()) {
- project.open(null);
- }
-
- //Fill out a project description
- IPath defaultPath = Platform.getLocation();
- IPath newPath = project.getFullPath();
- if (defaultPath.equals(newPath))
- newPath = null;
- IWorkspace workspace = ResourcesPlugin.getWorkspace();
- IProjectDescription description = workspace.newProjectDescription(project.getName());
- description.setLocation(newPath);
- //Create the project
- cproject = CCorePlugin.getDefault().createCProject(description,project,monitor,MakeCorePlugin.MAKE_PROJECT_ID); //.getCoreModel().create(project);
-
- if( !cproject.hasNature(CCProjectNature.CC_NATURE_ID) ){
- addNatureToProject(cproject, CCProjectNature.CC_NATURE_ID, null);
- }
- }
- catch (CoreException e){
- cproject = project;
- cproject.open(null);
- }
-
- return cproject;
-
+ private IProject createProject(String projectName) {
+ ICProject cPrj = CProjectHelper.createCCProject(projectName, "bin");
+ return cPrj.getProject();
}
private IFile importFile(String fileName, String resourceLocation)throws Exception{
@@ -168,16 +141,7 @@ public class IndexManagerTests extends TestCase {
fileDoc = new IFileDocument(file);
return file;
}
-
- private void addNatureToProject(IProject proj, String natureId, IProgressMonitor monitor) throws CoreException {
- IProjectDescription description = proj.getDescription();
- String[] prevNatures= description.getNatureIds();
- String[] newNatures= new String[prevNatures.length + 1];
- System.arraycopy(prevNatures, 0, newNatures, 0, prevNatures.length);
- newNatures[prevNatures.length]= natureId;
- description.setNatureIds(newNatures);
- proj.setDescription(description, monitor);
- }
+
/*
* Start of tests
*/
@@ -270,12 +234,12 @@ public class IndexManagerTests extends TestCase {
*/
private void safeDelete(IProject testProject) throws InterruptedException, CoreException {
try {
- testProject.delete(true,monitor);
+ testProject.delete(true, monitor);
} catch (CoreException e) {
Thread.sleep(5000);
- testProject.delete(true,monitor);
+ testProject.delete(true, monitor);
}
-
+
}
public void testRemoveFileFromIndex() throws Exception{
diff --git a/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/ArchiveTests.java b/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/ArchiveTests.java
index 4410522f3c7..2f2ae83c1e2 100644
--- a/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/ArchiveTests.java
+++ b/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/ArchiveTests.java
@@ -18,7 +18,6 @@ import org.eclipse.cdt.core.model.ICElement;
import org.eclipse.cdt.core.model.ICProject;
import org.eclipse.cdt.testplugin.CProjectHelper;
import org.eclipse.cdt.testplugin.util.ExpectedStrings;
-import org.eclipse.core.internal.resources.ResourceException;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IWorkspace;
import org.eclipse.core.resources.IWorkspaceRoot;
@@ -129,11 +128,7 @@ public class ArchiveTests extends TestCase {
* Called after every test case method.
*/
protected void tearDown() {
- try{
CProjectHelper.delete(testProject);
- }
- catch (ResourceException e) {}
- catch (CoreException e) {}
}
public static TestSuite suite() {
diff --git a/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/BinaryTests.java b/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/BinaryTests.java
index acbcc110441..c23cb67e5eb 100644
--- a/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/BinaryTests.java
+++ b/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/BinaryTests.java
@@ -19,7 +19,6 @@ import org.eclipse.cdt.core.model.ICElement;
import org.eclipse.cdt.core.model.ICProject;
import org.eclipse.cdt.testplugin.CProjectHelper;
import org.eclipse.cdt.testplugin.util.ExpectedStrings;
-import org.eclipse.core.internal.resources.ResourceException;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IWorkspace;
import org.eclipse.core.resources.IWorkspaceRoot;
@@ -55,24 +54,7 @@ public class BinaryTests extends TestCase {
super(name);
}
-
- /**
- * @see java.lang.Object#finalize()
- */
- protected void finalize() throws Throwable {
- super.finalize();
-
- /**
- * Make sure we leave the workspace clean for the next set of tests
- */
- try{
- CProjectHelper.delete(testProject);
- }
- catch (ResourceException e) {}
- catch (CoreException e) {}
- }
-
-
+
/**
* Sets up the test fixture.
*
@@ -182,15 +164,7 @@ public class BinaryTests extends TestCase {
* Called after every test case method.
*/
protected void tearDown() throws CoreException, InterruptedException {
- /* Let everything settle down before we try to delete the project.
- */
- Thread.sleep(500);
- try{
- CProjectHelper.delete(testProject);
- }
- catch (ResourceException e) {}
- catch (CoreException e) {}
-
+ CProjectHelper.delete(testProject);
}
public static TestSuite suite() {
diff --git a/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/CModelElementsTests.java b/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/CModelElementsTests.java
index 2221b184281..3fe6773bdb7 100644
--- a/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/CModelElementsTests.java
+++ b/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/CModelElementsTests.java
@@ -11,6 +11,7 @@ package org.eclipse.cdt.core.model.tests;
* Rational Software - Initial API and implementation
***********************************************************************/
import java.io.FileInputStream;
+import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.Map;
@@ -18,7 +19,6 @@ import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
-import org.eclipse.cdt.core.CCProjectNature;
import org.eclipse.cdt.core.model.ICElement;
import org.eclipse.cdt.core.model.ICProject;
import org.eclipse.cdt.core.model.IEnumeration;
@@ -43,12 +43,8 @@ import org.eclipse.cdt.internal.core.model.MethodTemplate;
import org.eclipse.cdt.internal.core.model.StructureTemplate;
import org.eclipse.cdt.internal.core.model.TranslationUnit;
import org.eclipse.cdt.testplugin.CProjectHelper;
-import org.eclipse.core.internal.resources.ResourceException;
import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Path;
@@ -67,11 +63,11 @@ public class CModelElementsTests extends TestCase {
super(name);
}
- protected void setUp() throws Exception {
+ protected void setUp() {
monitor = new NullProgressMonitor();
String pluginRoot=org.eclipse.core.runtime.Platform.getPlugin("org.eclipse.cdt.core.tests").find(new Path("/")).getFile();
- fCProject= CProjectHelper.createCProject("TestProject1", "bin");
+ fCProject= CProjectHelper.createCCProject("TestProject1", "bin");
headerFile = fCProject.getProject().getFile("CModelElementsTest.h");
if (!headerFile.exists()) {
try{
@@ -79,29 +75,15 @@ public class CModelElementsTests extends TestCase {
headerFile.create(fileIn,false, monitor);
} catch (CoreException e) {
e.printStackTrace();
+ } catch (FileNotFoundException e) {
+ e.printStackTrace();
}
}
- if (!fCProject.getProject().hasNature(CCProjectNature.CC_NATURE_ID)) {
- addNatureToProject(fCProject.getProject(), CCProjectNature.CC_NATURE_ID, null);
- }
}
- private static void addNatureToProject(IProject proj, String natureId, IProgressMonitor monitor) throws CoreException {
- IProjectDescription description = proj.getDescription();
- String[] prevNatures= description.getNatureIds();
- String[] newNatures= new String[prevNatures.length + 1];
- System.arraycopy(prevNatures, 0, newNatures, 0, prevNatures.length);
- newNatures[prevNatures.length]= natureId;
- description.setNatureIds(newNatures);
- proj.setDescription(description, monitor);
- }
protected void tearDown() {
- try{
CProjectHelper.delete(fCProject);
- }
- catch (ResourceException e) {}
- catch (CoreException e) {}
}
public void testCModelElements(){
diff --git a/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/ElementDeltaTests.java b/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/ElementDeltaTests.java
index f7e1003d789..0bdcb76c18b 100644
--- a/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/ElementDeltaTests.java
+++ b/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/ElementDeltaTests.java
@@ -13,6 +13,7 @@ package org.eclipse.cdt.core.model.tests;
***********************************************************************/
import java.io.FileInputStream;
+import java.io.FileNotFoundException;
import java.util.Iterator;
import java.util.Vector;
@@ -20,7 +21,6 @@ import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
-import org.eclipse.cdt.core.CCProjectNature;
import org.eclipse.cdt.core.model.CModelException;
import org.eclipse.cdt.core.model.ElementChangedEvent;
import org.eclipse.cdt.core.model.IBuffer;
@@ -34,12 +34,8 @@ import org.eclipse.cdt.internal.core.model.CModelManager;
import org.eclipse.cdt.internal.core.model.TranslationUnit;
import org.eclipse.cdt.testplugin.CProjectHelper;
import org.eclipse.cdt.testplugin.TestPluginLauncher;
-import org.eclipse.core.internal.resources.ResourceException;
import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Path;
@@ -68,11 +64,11 @@ public class ElementDeltaTests extends TestCase implements IElementChangedListen
super(name);
}
- protected void setUp() throws Exception {
+ protected void setUp() {
monitor = new NullProgressMonitor();
String pluginRoot=org.eclipse.core.runtime.Platform.getPlugin("org.eclipse.cdt.core.tests").find(new Path("/")).getFile();
- fCProject= CProjectHelper.createCProject("TestProject1", "bin");
+ fCProject= CProjectHelper.createCCProject("TestProject1", "bin");
//Path filePath = new Path(ResourcesPlugin.getWorkspace().getRoot().getLocation().toString()+ fCProject.getPath().toString()+ "/WorkingCopyTest.h");
headerFile = fCProject.getProject().getFile("WorkingCopyTest.h");
if (!headerFile.exists()) {
@@ -81,11 +77,10 @@ public class ElementDeltaTests extends TestCase implements IElementChangedListen
headerFile.create(fileIn,false, monitor);
} catch (CoreException e) {
e.printStackTrace();
+ } catch (FileNotFoundException e) {
+ e.printStackTrace();
}
}
- if (!fCProject.getProject().hasNature(CCProjectNature.CC_NATURE_ID)) {
- addNatureToProject(fCProject.getProject(), CCProjectNature.CC_NATURE_ID, null);
- }
// register with the model manager to listen to delta changes
CModelManager.getDefault().addElementChangedListener(this);
@@ -94,22 +89,8 @@ public class ElementDeltaTests extends TestCase implements IElementChangedListen
changedElements = new Vector(20);
}
- private static void addNatureToProject(IProject proj, String natureId, IProgressMonitor monitor) throws CoreException {
- IProjectDescription description = proj.getDescription();
- String[] prevNatures= description.getNatureIds();
- String[] newNatures= new String[prevNatures.length + 1];
- System.arraycopy(prevNatures, 0, newNatures, 0, prevNatures.length);
- newNatures[prevNatures.length]= natureId;
- description.setNatureIds(newNatures);
- proj.setDescription(description, monitor);
- }
-
protected void tearDown() {
- try{
CProjectHelper.delete(fCProject);
- }
- catch (ResourceException e) {}
- catch (CoreException e) {}
}
diff --git a/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/IntegratedCModelTest.java b/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/IntegratedCModelTest.java
index 91378db259d..2c72fcbd430 100644
--- a/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/IntegratedCModelTest.java
+++ b/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/IntegratedCModelTest.java
@@ -5,21 +5,17 @@
package org.eclipse.cdt.core.model.tests;
import java.io.FileInputStream;
+import java.io.FileNotFoundException;
import java.util.Map;
import junit.framework.TestCase;
-import org.eclipse.cdt.core.CCProjectNature;
import org.eclipse.cdt.core.model.ICProject;
import org.eclipse.cdt.core.model.ITranslationUnit;
import org.eclipse.cdt.internal.core.model.TranslationUnit;
import org.eclipse.cdt.testplugin.CProjectHelper;
-import org.eclipse.core.internal.resources.ResourceException;
import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Path;
@@ -58,11 +54,11 @@ public abstract class IntegratedCModelTest extends TestCase {
*/
abstract public String getSourcefileResource();
- public void setUp() throws Exception {
+ public void setUp() {
monitor = new NullProgressMonitor();
String pluginRoot=org.eclipse.core.runtime.Platform.getPlugin("org.eclipse.cdt.core.tests").find(new Path("/")).getFile();
- fCProject= CProjectHelper.createCProject("TestProject1", "bin");
+ fCProject= CProjectHelper.createCCProject("TestProject1", "bin");
sourceFile = fCProject.getProject().getFile( getSourcefileResource() );
if (!sourceFile.exists()) {
@@ -71,33 +67,16 @@ public abstract class IntegratedCModelTest extends TestCase {
sourceFile.create(fileIn,false, monitor);
} catch (CoreException e) {
e.printStackTrace();
+ } catch (FileNotFoundException e) {
+ e.printStackTrace();
}
}
-
- if (!fCProject.getProject().hasNature(CCProjectNature.CC_NATURE_ID)) {
- addNatureToProject(fCProject.getProject(), CCProjectNature.CC_NATURE_ID, null);
- }
}
protected void tearDown() {
- try{
- CProjectHelper.delete(fCProject);
- }
- catch (ResourceException e) {}
- catch (CoreException e) {}
-
+ CProjectHelper.delete(fCProject);
}
- private static void addNatureToProject(IProject proj, String natureId, IProgressMonitor monitor) throws CoreException {
- IProjectDescription description = proj.getDescription();
- String[] prevNatures= description.getNatureIds();
- String[] newNatures= new String[prevNatures.length + 1];
- System.arraycopy(prevNatures, 0, newNatures, 0, prevNatures.length);
- newNatures[prevNatures.length]= natureId;
- description.setNatureIds(newNatures);
- proj.setDescription(description, monitor);
- }
-
protected ITranslationUnit getTU() {
TranslationUnit tu = new TranslationUnit(fCProject, sourceFile);
// parse the translation unit to get the elements tree
diff --git a/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/WorkingCopyTests.java b/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/WorkingCopyTests.java
index a9f3bb3099a..a38345c7d71 100644
--- a/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/WorkingCopyTests.java
+++ b/core/org.eclipse.cdt.core.tests/model/org/eclipse/cdt/core/model/tests/WorkingCopyTests.java
@@ -12,12 +12,12 @@ package org.eclipse.cdt.core.model.tests;
import java.io.FileInputStream;
+import java.io.FileNotFoundException;
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
-import org.eclipse.cdt.core.CCProjectNature;
import org.eclipse.cdt.core.model.IBuffer;
import org.eclipse.cdt.core.model.ICProject;
import org.eclipse.cdt.core.model.ITranslationUnit;
@@ -25,12 +25,8 @@ import org.eclipse.cdt.core.model.IWorkingCopy;
import org.eclipse.cdt.internal.core.model.TranslationUnit;
import org.eclipse.cdt.testplugin.CProjectHelper;
import org.eclipse.cdt.testplugin.TestPluginLauncher;
-import org.eclipse.core.internal.resources.ResourceException;
import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.core.runtime.Path;
@@ -58,11 +54,11 @@ public class WorkingCopyTests extends TestCase {
super(name);
}
- protected void setUp() throws Exception {
+ protected void setUp() {
monitor = new NullProgressMonitor();
String pluginRoot=org.eclipse.core.runtime.Platform.getPlugin("org.eclipse.cdt.core.tests").find(new Path("/")).getFile();
- fCProject= CProjectHelper.createCProject("TestProject1", "bin");
+ fCProject= CProjectHelper.createCCProject("TestProject1", "bin");
//Path filePath = new Path(ResourcesPlugin.getWorkspace().getRoot().getLocation().toString()+ fCProject.getPath().toString()+ "/WorkingCopyTest.h");
headerFile = fCProject.getProject().getFile("WorkingCopyTest.h");
if (!headerFile.exists()) {
@@ -71,29 +67,14 @@ public class WorkingCopyTests extends TestCase {
headerFile.create(fileIn,false, monitor);
} catch (CoreException e) {
e.printStackTrace();
+ } catch (FileNotFoundException e) {
+ e.printStackTrace();
}
}
- if (!fCProject.getProject().hasNature(CCProjectNature.CC_NATURE_ID)) {
- addNatureToProject(fCProject.getProject(), CCProjectNature.CC_NATURE_ID, null);
- }
- }
-
- private static void addNatureToProject(IProject proj, String natureId, IProgressMonitor monitor) throws CoreException {
- IProjectDescription description = proj.getDescription();
- String[] prevNatures= description.getNatureIds();
- String[] newNatures= new String[prevNatures.length + 1];
- System.arraycopy(prevNatures, 0, newNatures, 0, prevNatures.length);
- newNatures[prevNatures.length]= natureId;
- description.setNatureIds(newNatures);
- proj.setDescription(description, monitor);
}
protected void tearDown() {
- try{
- CProjectHelper.delete(fCProject);
- }
- catch (ResourceException e) {}
- catch (CoreException e) {}
+ CProjectHelper.delete(fCProject);
}
diff --git a/core/org.eclipse.cdt.core.tests/plugin.xml b/core/org.eclipse.cdt.core.tests/plugin.xml
index 725b1f98d41..ba7cb5c03a7 100644
--- a/core/org.eclipse.cdt.core.tests/plugin.xml
+++ b/core/org.eclipse.cdt.core.tests/plugin.xml
@@ -244,12 +244,22 @@
-
-
+
+
+
+
+
+
+
diff --git a/core/org.eclipse.cdt.core.tests/search/org/eclipse/cdt/core/search/tests/BaseSearchTest.java b/core/org.eclipse.cdt.core.tests/search/org/eclipse/cdt/core/search/tests/BaseSearchTest.java
index 494521537ed..282aa9d1977 100644
--- a/core/org.eclipse.cdt.core.tests/search/org/eclipse/cdt/core/search/tests/BaseSearchTest.java
+++ b/core/org.eclipse.cdt.core.tests/search/org/eclipse/cdt/core/search/tests/BaseSearchTest.java
@@ -17,30 +17,24 @@ import java.io.FileInputStream;
import junit.framework.TestCase;
-import org.eclipse.cdt.core.CCProjectNature;
import org.eclipse.cdt.core.CCorePlugin;
+import org.eclipse.cdt.core.model.ICProject;
import org.eclipse.cdt.core.search.BasicSearchResultCollector;
import org.eclipse.cdt.core.search.ICSearchConstants;
import org.eclipse.cdt.core.search.ICSearchPattern;
import org.eclipse.cdt.core.search.ICSearchResultCollector;
import org.eclipse.cdt.core.search.ICSearchScope;
import org.eclipse.cdt.core.search.SearchEngine;
-import org.eclipse.cdt.make.core.MakeCorePlugin;
+import org.eclipse.cdt.testplugin.CProjectHelper;
import org.eclipse.cdt.testplugin.FileManager;
import org.eclipse.core.internal.resources.ResourceException;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectDescription;
-import org.eclipse.core.resources.IResource;
import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRoot;
import org.eclipse.core.resources.ResourcesPlugin;
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.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
/**
* @author aniefer
@@ -108,50 +102,8 @@ public class BaseSearchTest extends TestCase implements ICSearchConstants {
}
private IProject createProject(String projectName) throws CoreException {
- IWorkspaceRoot root = workspace.getRoot();
- IProject project = root.getProject(projectName);
- IProject cproject = null;
- try{
-
- if( !project.exists() ) {
- project.create( null );
- } else {
- project.refreshLocal(IResource.DEPTH_INFINITE, null);
- }
-
- if( !project.isOpen() ) {
- project.open( null );
- }
-
- //Fill out a project description
- IPath defaultPath = Platform.getLocation();
- IPath newPath = project.getFullPath();
-
- if (defaultPath.equals(newPath))
- newPath = null;
-
- IProjectDescription description = workspace.newProjectDescription(project.getName());
-
- description.setLocation(newPath);
-
- //Create the project
- cproject = CCorePlugin.getDefault().createCProject( description,
- project,
- monitor,
- MakeCorePlugin.MAKE_PROJECT_ID);
-
- if( !project.hasNature(CCProjectNature.CC_NATURE_ID) ){
- addNatureToProject(project, CCProjectNature.CC_NATURE_ID, null);
- }
- }
- catch (CoreException e){
- cproject = project;
- cproject.open(null);
- }
-
- return cproject;
-
-
+ ICProject cPrj = CProjectHelper.createCCProject(projectName, "bin");
+ return cPrj.getProject();
}
private void importFile(String fileName, String resourceLocation)throws Exception{
@@ -166,19 +118,7 @@ public class BaseSearchTest extends TestCase implements ICSearchConstants {
}
}
-
- private void addNatureToProject(IProject proj, String natureId, IProgressMonitor monitor) throws CoreException {
- IProjectDescription description = proj.getDescription();
- String[] prevNatures = description.getNatureIds();
- String[] newNatures = new String[ prevNatures.length + 1 ];
-
- System.arraycopy( prevNatures, 0, newNatures, 0, prevNatures.length );
- newNatures[ prevNatures.length ] = natureId;
- description.setNatureIds( newNatures );
- proj.setDescription( description, monitor );
- }
-
protected void search(IWorkspace workspace, ICSearchPattern pattern, ICSearchScope scope, ICSearchResultCollector collector) {
searchEngine.search( workspace, pattern, scope, collector, false );
}
diff --git a/core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/testplugin/CProjectHelper.java b/core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/testplugin/CProjectHelper.java
index c4371a864cf..a68438ff212 100644
--- a/core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/testplugin/CProjectHelper.java
+++ b/core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/testplugin/CProjectHelper.java
@@ -1,6 +1,10 @@
package org.eclipse.cdt.testplugin;
import java.lang.reflect.InvocationTargetException;
import java.util.zip.ZipFile;
+
+import junit.framework.Assert;
+
+import org.eclipse.cdt.core.CCProjectNature;
import org.eclipse.cdt.core.CCorePlugin;
import org.eclipse.cdt.core.CProjectNature;
import org.eclipse.cdt.core.model.IArchive;
@@ -16,11 +20,14 @@ import org.eclipse.core.resources.IFolder;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IProjectDescription;
import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IWorkspace;
import org.eclipse.core.resources.IWorkspaceRoot;
+import org.eclipse.core.resources.IWorkspaceRunnable;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
import org.eclipse.ui.dialogs.IOverwriteQuery;
import org.eclipse.ui.wizards.datatransfer.ImportOperation;
import org.eclipse.ui.wizards.datatransfer.ZipFileStructureProvider;
@@ -28,35 +35,77 @@ import org.eclipse.ui.wizards.datatransfer.ZipFileStructureProvider;
* Helper methods to set up a ICProject.
*/
public class CProjectHelper {
+
/**
* Creates a ICProject.
*/
- public static ICProject createCProject(String projectName,
- String binFolderName) throws CoreException {
- IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
- IProject project = root.getProject(projectName);
- if (!project.exists()) {
- project.create(null);
- } else {
- project.refreshLocal(IResource.DEPTH_INFINITE, null);
+ public static ICProject createCProject(final String projectName, String binFolderName){
+ final IWorkspace ws = ResourcesPlugin.getWorkspace();
+ final IProject newProject[] = new IProject[1];
+ try {
+ ws.run(new IWorkspaceRunnable() {
+ public void run(IProgressMonitor monitor) throws CoreException {
+ IWorkspaceRoot root = ws.getRoot();
+ IProject project = root.getProject(projectName);
+ if (!project.exists()) {
+ project.create(null);
+ } else {
+ project.refreshLocal(IResource.DEPTH_INFINITE, null);
+ }
+ if (!project.isOpen()) {
+ project.open(null);
+ }
+ if (!project.hasNature(CProjectNature.C_NATURE_ID)) {
+ String projectId = CTestPlugin.PLUGIN_ID + ".TestProject";
+ addNatureToProject(project, CProjectNature.C_NATURE_ID, null);
+ CCorePlugin.getDefault().mapCProjectOwner(project, projectId, false);
+ }
+ newProject[0] = project;
+ }
+ }, null);
+ } catch (CoreException e) {
+ Assert.fail(getMessage(e.getStatus()));
}
- if (!project.isOpen()) {
- project.open(null);
- }
- if (!project.hasNature(CProjectNature.C_NATURE_ID)) {
- String projectId = CTestPlugin.PLUGIN_ID + ".TestProject";
- CCorePlugin.getDefault()
- .mapCProjectOwner(project, projectId, false);
- addNatureToProject(project, CProjectNature.C_NATURE_ID, null);
- }
- ICProject cproject = CCorePlugin.getDefault().getCoreModel().create(
- project);
- return cproject;
+
+ return CCorePlugin.getDefault().getCoreModel().create(newProject[0]);
}
+
+ private static String getMessage(IStatus status) {
+ StringBuffer message = new StringBuffer("[");
+ message.append(status.getMessage());
+ if (status.isMultiStatus()) {
+ IStatus children[] = status.getChildren();
+ for( int i = 0; i < children.length; i++) {
+ message.append(getMessage(children[i]));
+ }
+ }
+ message.append("]");
+ return message.toString();
+ }
+
+ public static ICProject createCCProject(final String projectName, final String binFolderName) {
+ final IWorkspace ws = ResourcesPlugin.getWorkspace();
+ final ICProject newProject[] = new ICProject[1];
+ try {
+ ws.run(new IWorkspaceRunnable() {
+ public void run(IProgressMonitor monitor) throws CoreException {
+ ICProject cproject = createCProject(projectName, binFolderName);
+ if (!cproject.getProject().hasNature(CCProjectNature.CC_NATURE_ID)) {
+ addNatureToProject(cproject.getProject(), CCProjectNature.CC_NATURE_ID, null);
+ }
+ newProject[0] = cproject;
+ }
+ }, null);
+ } catch (CoreException e) {
+ Assert.fail(getMessage(e.getStatus()));
+ }
+ return newProject[0];
+ }
+
/**
* Removes a ICProject.
*/
- public static void delete(ICProject cproject) throws CoreException {
+ public static void delete(ICProject cproject) {
try {
cproject.getProject().delete(true, true, null);
} catch (CoreException e) {
@@ -64,15 +113,19 @@ public class CProjectHelper {
Thread.sleep(1000);
} catch (InterruptedException e1) {
} finally {
- cproject.getProject().delete(true, true, null);
+ try {
+ cproject.getProject().delete(true, true, null);
+ } catch (CoreException e2) {
+ Assert.fail(getMessage(e2.getStatus()));
+ }
}
}
}
+
/**
* Adds a source container to a ICProject.
*/
- public static ICContainer addSourceContainer(ICProject cproject,
- String containerName) throws CoreException {
+ public static ICContainer addSourceContainer(ICProject cproject, String containerName) throws CoreException {
IProject project = cproject.getProject();
ICContainer container = null;
if (containerName == null || containerName.length() == 0) {
@@ -86,25 +139,26 @@ public class CProjectHelper {
}
return container;
}
+
/**
* Adds a source container to a ICProject and imports all files contained
* in the given Zip file.
*/
- public static ICContainer addSourceContainerWithImport(ICProject cproject,
- String containerName, ZipFile zipFile)
- throws InvocationTargetException, CoreException {
+ public static ICContainer addSourceContainerWithImport(ICProject cproject, String containerName, ZipFile zipFile)
+ throws InvocationTargetException, CoreException {
ICContainer root = addSourceContainer(cproject, containerName);
importFilesFromZip(zipFile, root.getPath(), null);
return root;
}
+
/**
* Removes a source folder from a ICProject.
*/
- public static void removeSourceContainer(ICProject cproject,
- String containerName) throws CoreException {
+ public static void removeSourceContainer(ICProject cproject, String containerName) throws CoreException {
IFolder folder = cproject.getProject().getFolder(containerName);
folder.delete(true, null);
}
+
/**
* Attempts to find an archive with the given name in the workspace
*/
@@ -128,6 +182,7 @@ public class CProjectHelper {
}
return (null);
}
+
/**
* Attempts to find a binary with the given name in the workspace
*/
@@ -145,6 +200,7 @@ public class CProjectHelper {
}
return (null);
}
+
/**
* Attempts to find an object with the given name in the workspace
*/
@@ -157,16 +213,16 @@ public class CProjectHelper {
for (x = 0; x < myElements.length; x++) {
if (myElements[x].getElementName().equals(name))
if (myElements[x] instanceof IBinary) {
- return ((IBinary) myElements[x]);
+ return ((IBinary)myElements[x]);
}
}
return (null);
}
+
/**
* Attempts to find a TranslationUnit with the given name in the workspace
*/
- public static ITranslationUnit findTranslationUnit(ICProject testProject,
- String name) {
+ public static ITranslationUnit findTranslationUnit(ICProject testProject, String name) {
int x;
ICElement[] myElements;
myElements = testProject.getChildren();
@@ -175,11 +231,12 @@ public class CProjectHelper {
for (x = 0; x < myElements.length; x++) {
if (myElements[x].getElementName().equals(name))
if (myElements[x] instanceof ITranslationUnit) {
- return ((ITranslationUnit) myElements[x]);
+ return ((ITranslationUnit)myElements[x]);
}
}
return (null);
}
+
/**
* Attempts to find an element with the given name in the workspace
*/
@@ -195,8 +252,8 @@ public class CProjectHelper {
}
return (null);
}
- private static void addNatureToProject(IProject proj, String natureId,
- IProgressMonitor monitor) throws CoreException {
+
+ private static void addNatureToProject(IProject proj, String natureId, IProgressMonitor monitor) throws CoreException {
IProjectDescription description = proj.getDescription();
String[] prevNatures = description.getNatureIds();
String[] newNatures = new String[prevNatures.length + 1];
@@ -205,19 +262,19 @@ public class CProjectHelper {
description.setNatureIds(newNatures);
proj.setDescription(description, monitor);
}
- private static void importFilesFromZip(ZipFile srcZipFile, IPath destPath,
- IProgressMonitor monitor) throws InvocationTargetException {
- ZipFileStructureProvider structureProvider = new ZipFileStructureProvider(
- srcZipFile);
+
+ private static void importFilesFromZip(ZipFile srcZipFile, IPath destPath, IProgressMonitor monitor)
+ throws InvocationTargetException {
+ ZipFileStructureProvider structureProvider = new ZipFileStructureProvider(srcZipFile);
try {
- ImportOperation op = new ImportOperation(destPath,
- structureProvider.getRoot(), structureProvider,
- new ImportOverwriteQuery());
+ ImportOperation op =
+ new ImportOperation(destPath, structureProvider.getRoot(), structureProvider, new ImportOverwriteQuery());
op.run(monitor);
} catch (InterruptedException e) {
// should not happen
}
}
+
private static class ImportOverwriteQuery implements IOverwriteQuery {
public String queryOverwrite(String file) {
return ALL;
diff --git a/core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/testplugin/TestProject.java b/core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/testplugin/TestProject.java
index a772dcbd1b9..5dc8979acbe 100644
--- a/core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/testplugin/TestProject.java
+++ b/core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/testplugin/TestProject.java
@@ -8,15 +8,20 @@
***********************************************************************/
package org.eclipse.cdt.testplugin;
+import org.eclipse.cdt.core.CCorePlugin;
import org.eclipse.cdt.core.ICDescriptor;
import org.eclipse.cdt.core.ICOwner;
import org.eclipse.core.runtime.CoreException;
public class TestProject implements ICOwner {
- public void configure(ICDescriptor cproject) throws CoreException {
+ public void configure(ICDescriptor cDescriptor) throws CoreException {
+ cDescriptor.create(CCorePlugin.BUILD_SCANNER_INFO_UNIQ_ID, TestScannerProvider.SCANNER_ID);
}
- public void update(ICDescriptor cproject, String extensionID) throws CoreException {
+ public void update(ICDescriptor cDescriptor, String extensionID) throws CoreException {
+ if ( extensionID.equals(CCorePlugin.BUILD_SCANNER_INFO_UNIQ_ID)) {
+ cDescriptor.create(CCorePlugin.BUILD_SCANNER_INFO_UNIQ_ID, TestScannerProvider.SCANNER_ID);
+ }
}
}
diff --git a/core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/testplugin/TestScannerInfo.java b/core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/testplugin/TestScannerInfo.java
new file mode 100644
index 00000000000..959e5a3d17f
--- /dev/null
+++ b/core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/testplugin/TestScannerInfo.java
@@ -0,0 +1,27 @@
+/*
+ * Created on Jan 16, 2004
+ *
+ * Copyright (c) 2002,2003 QNX Software Systems Ltd.
+ *
+ * Contributors:
+ * QNX Software Systems - Initial API and implementation
+***********************************************************************/
+package org.eclipse.cdt.testplugin;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.cdt.core.parser.IScannerInfo;
+
+public class TestScannerInfo implements IScannerInfo {
+ private Map emptyMap = new HashMap(0);
+
+ public Map getDefinedSymbols() {
+ return emptyMap;
+ }
+
+ public String[] getIncludePaths() {
+ return new String[0];
+ }
+
+}
diff --git a/core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/testplugin/TestScannerProvider.java b/core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/testplugin/TestScannerProvider.java
new file mode 100644
index 00000000000..1c989e5bd47
--- /dev/null
+++ b/core/org.eclipse.cdt.core.tests/suite/org/eclipse/cdt/testplugin/TestScannerProvider.java
@@ -0,0 +1,30 @@
+/*
+ * Created on Jan 16, 2004
+ *
+ * Copyright (c) 2002,2003 QNX Software Systems Ltd.
+ *
+ * Contributors:
+ * QNX Software Systems - Initial API and implementation
+***********************************************************************/
+package org.eclipse.cdt.testplugin;
+
+import org.eclipse.cdt.core.AbstractCExtension;
+import org.eclipse.cdt.core.parser.IScannerInfo;
+import org.eclipse.cdt.core.parser.IScannerInfoChangeListener;
+import org.eclipse.cdt.core.parser.IScannerInfoProvider;
+import org.eclipse.core.resources.IResource;
+
+public class TestScannerProvider extends AbstractCExtension implements IScannerInfoProvider {
+
+ public final static String SCANNER_ID = CTestPlugin.PLUGIN_ID + "TestScanner";
+
+ public IScannerInfo getScannerInformation(IResource resource) {
+ return new TestScannerInfo();
+ }
+
+ public void subscribe(IResource resource, IScannerInfoChangeListener listener) {
+ }
+
+ public void unsubscribe(IResource resource, IScannerInfoChangeListener listener) {
+ }
+}