Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Leherbauer2007-09-12 12:43:57 +0000
committerAnton Leherbauer2007-09-12 12:43:57 +0000
commit14398ec364c1a2ea09152841091e5f894847d2aa (patch)
tree4228cbc01ab2ce325152b71d5775c6e098665c5d /build/org.eclipse.cdt.make.core.tests
parent68d9181153c7723bc099eca4b206c5214e0b4004 (diff)
downloadorg.eclipse.cdt-14398ec364c1a2ea09152841091e5f894847d2aa.tar.gz
org.eclipse.cdt-14398ec364c1a2ea09152841091e5f894847d2aa.tar.xz
org.eclipse.cdt-14398ec364c1a2ea09152841091e5f894847d2aa.zip
Testcase for 203059: [Scanner Discovery] Compiler commands within sh -c '...' are ignored
Diffstat (limited to 'build/org.eclipse.cdt.make.core.tests')
-rw-r--r--build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/scannerdiscovery/BaseBOPConsoleParserTests.java27
1 files changed, 27 insertions, 0 deletions
diff --git a/build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/scannerdiscovery/BaseBOPConsoleParserTests.java b/build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/scannerdiscovery/BaseBOPConsoleParserTests.java
index 054aa50f666..07157eddf33 100644
--- a/build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/scannerdiscovery/BaseBOPConsoleParserTests.java
+++ b/build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/scannerdiscovery/BaseBOPConsoleParserTests.java
@@ -127,4 +127,31 @@ public abstract class BaseBOPConsoleParserTests extends BaseTestCase {
assertEquals(3, sumSymbols.size());
}
+ // https://bugs.eclipse.org/bugs/show_bug.cgi?id=203059
+ public void _testCompilerCommandInsideShellInvocation_bug203059() throws Exception {
+ fOutputParser.processLine("sh -c '/usr/bin/gcc -DA test1.c'"); //$NON-NLS-1$
+ fOutputParser.processLine("sh -c '/usr/gcc-installs/gcc -DB test2.c;"); //$NON-NLS-1$
+ fOutputParser.processLine("sh -c '/usr/gcc/gcc -DC test3.c'"); //$NON-NLS-1$
+ fOutputParser.processLine("sh -c '/usr/gcc.exe -DD test4.c'"); //$NON-NLS-1$
+ fOutputParser.processLine("sh -c '/usr/gcc-tool-x -DE test5.c'"); //$NON-NLS-1$
+ fOutputParser.processLine("sh -c '/usr/gcc/something_else -DF test6.c'"); //$NON-NLS-1$
+ // with semicolon
+ fOutputParser.processLine("sh -c 'gcc -DAA test1.c; gcc -DBB test2.c'"); //$NON-NLS-1$
+ fOutputParser.processLine("sh -c 'nix -DCC; gcc -DDD test2.c'"); //$NON-NLS-1$
+
+ List sumSymbols = fCollector.getCollectedScannerInfo(null, ScannerInfoTypes.SYMBOL_DEFINITIONS);
+ assertTrue(sumSymbols.contains("A")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("B")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("C")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("D")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("E")); //$NON-NLS-1$
+ assertFalse(sumSymbols.contains("F")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("AA")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("BB")); //$NON-NLS-1$
+ assertFalse(sumSymbols.contains("CC")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("DD")); //$NON-NLS-1$
+ assertEquals(8, sumSymbols.size());
+ }
+
+
}

Back to the top