diff options
author | Anton Leherbauer | 2007-09-12 12:43:57 +0000 |
---|---|---|
committer | Anton Leherbauer | 2007-09-12 12:43:57 +0000 |
commit | 14398ec364c1a2ea09152841091e5f894847d2aa (patch) | |
tree | 4228cbc01ab2ce325152b71d5775c6e098665c5d /build/org.eclipse.cdt.make.core.tests | |
parent | 68d9181153c7723bc099eca4b206c5214e0b4004 (diff) | |
download | org.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.java | 27 |
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()); + } + + } |