From 1f78ede7df212b2d54f8a1e28b6f08cebd1ff300 Mon Sep 17 00:00:00 2001 From: Leo Treggiari Date: Sun, 26 Jun 2005 17:25:13 +0000 Subject: [PATCH] Add resource custom build step test --- .../rcbsBasicTest/rcbsBasicTest.zip | Bin 0 -> 3487 bytes .../tests/ManagedProject30MakefileTests.java | 41 +++++++++++++++++- 2 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/rcbsBasicTest/rcbsBasicTest.zip diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/rcbsBasicTest/rcbsBasicTest.zip b/build/org.eclipse.cdt.managedbuilder.core.tests/resources/test30Projects/rcbsBasicTest/rcbsBasicTest.zip new file mode 100644 index 0000000000000000000000000000000000000000..3ccb14ae66073dff45fecc9bb4749f576491aece GIT binary patch literal 3487 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 literal 0 HcmV?d00001 diff --git a/build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedProject30MakefileTests.java b/build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedProject30MakefileTests.java index e5f404006fb..2a40b0a6365 100644 --- a/build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedProject30MakefileTests.java +++ b/build/org.eclipse.cdt.managedbuilder.core.tests/tests/org/eclipse/cdt/managedbuilder/core/tests/ManagedProject30MakefileTests.java @@ -23,10 +23,14 @@ import junit.framework.Test; import junit.framework.TestCase; import junit.framework.TestSuite; +import org.eclipse.cdt.managedbuilder.core.IAdditionalInput; +import org.eclipse.cdt.managedbuilder.core.IInputType; import org.eclipse.cdt.managedbuilder.core.IManagedBuildInfo; +import org.eclipse.cdt.managedbuilder.core.IOutputType; import org.eclipse.cdt.managedbuilder.core.ManagedBuildManager; import org.eclipse.cdt.managedbuilder.core.IConfiguration; import org.eclipse.cdt.managedbuilder.core.IResourceConfiguration; +import org.eclipse.cdt.managedbuilder.core.ITool; import org.eclipse.cdt.managedbuilder.projectconverter.UpdateManagedProjectManager; import org.eclipse.cdt.managedbuilder.testplugin.CTestPlugin; import org.eclipse.cdt.managedbuilder.testplugin.ManagedBuildTestHelper; @@ -62,9 +66,9 @@ public class ManagedProject30MakefileTests extends TestCase { suite.addTest(new ManagedProject30MakefileTests("test30NoFilesToBuild")); suite.addTest(new ManagedProject30MakefileTests("testFileWithNoExtension")); suite.addTest(new ManagedProject30MakefileTests("testPreAndPostProcessBuildSteps")); + suite.addTest(new ManagedProject30MakefileTests("testResourceCustomBuildStep")); suite.addTest(new ManagedProject30MakefileTests("test30_1")); suite.addTest(new ManagedProject30MakefileTests("test30_2")); - return suite; } @@ -432,6 +436,41 @@ public class ManagedProject30MakefileTests extends TestCase { } + /* (non-Javadoc) + * tests 3.0 style tool integration: create resource custom build step and verify that + * the proper commands are generated in the makefile which is created by the managedbuild system + */ + public void testResourceCustomBuildStep(){ + IPath[] makefiles = { + Path.fromOSString("makefile"), + Path.fromOSString("objects.mk"), + Path.fromOSString("subdir.mk"), + Path.fromOSString("sources.mk")}; + ITool rcbsTool; + IInputType rcbsToolInputType; + IAdditionalInput rcbsToolInputTypeAdditionalInput; + IOutputType rcbsToolOutputType; + + IProject[] projects = createProjects("rcbsBasicTest", null, null, true); + IProject project = projects[0]; + IManagedBuildInfo info = ManagedBuildManager.getBuildInfo(project); + IConfiguration config = info.getDefaultConfiguration(); + IFile projfile = project.getFile("rcbsBasicTest.c"); + IResourceConfiguration rconfig = config.createResourceConfiguration(projfile); + rcbsTool = rconfig.createTool(null,"rcbsBasicTestTool","rcbs Basic Test Tool",false); + rcbsToolInputType = rcbsTool.createInputType(null,"rcbsToolInputTypeId","rcbsToolInputTypeName",false); + rcbsToolInputTypeAdditionalInput = rcbsToolInputType.createAdditionalInput(""); + rcbsToolInputTypeAdditionalInput.setKind(IAdditionalInput.KIND_ADDITIONAL_INPUT_DEPENDENCY); + rcbsToolOutputType = rcbsTool.createOutputType(null,"rcbsToolOutputTypeId","rcbsToolOutputTypeName",false); + rcbsToolOutputType.setOutputNames("rcbsBasicTest.o"); + rcbsTool.setCustomBuildStep(true); + rcbsTool.setToolCommand("gcc -g -c ../rcbsBasicTest.c -o ./rcbsBasicTest.o"); + rcbsTool.setAnnouncement("Now executing custom build step for rcbsBasicTest debug config"); + rconfig.setRcbsApplicability(IResourceConfiguration.KIND_APPLY_RCBS_TOOL_AS_OVERRIDE); + buildProjects(projects, makefiles); + } + + /* (non-Javadoc) * tests 3.0 style tool integration with pre and post process steps added to typical compile & link */