Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephan Herrmann2018-07-14 20:17:15 +0000
committerStephan Herrmann2018-07-14 20:17:15 +0000
commit806c9bf06a887685e619419df1058d0e5f0b0031 (patch)
treee21ffb10f8a4631483aa0a67eaf6fd8383dfbba9
parented3e5b9ededc48fd35d6fef21fb3c4117c12ce75 (diff)
downloadeclipse.jdt.core-806c9bf06a887685e619419df1058d0e5f0b0031.tar.gz
eclipse.jdt.core-806c9bf06a887685e619419df1058d0e5f0b0031.tar.xz
eclipse.jdt.core-806c9bf06a887685e619419df1058d0e5f0b0031.zip
Test: don't let ClassFileReaderTest_1_5.testBug504031() spam on stderr
-rw-r--r--org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/AbstractRegressionTest.java25
-rw-r--r--org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/ClassFileReaderTest_1_4.java2
-rw-r--r--org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/ClassFileReaderTest_1_5.java6
3 files changed, 23 insertions, 10 deletions
diff --git a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/AbstractRegressionTest.java b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/AbstractRegressionTest.java
index 2a2bd26de4..6dde47324e 100644
--- a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/AbstractRegressionTest.java
+++ b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/AbstractRegressionTest.java
@@ -29,6 +29,7 @@ import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
+import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.URL;
import java.text.SimpleDateFormat;
@@ -982,8 +983,10 @@ protected static class JavacTestOptions {
protected void checkClassFile(String className, String source, String expectedOutput, int mode) throws ClassFormatException, IOException {
this.checkClassFile("", className, source, expectedOutput, mode);
}
- protected void checkClassFile(String directoryName, String className, String disassembledClassName, String source, String expectedOutput, int mode) throws ClassFormatException, IOException {
- compileAndDeploy(source, directoryName, className);
+ protected void checkClassFile(String directoryName, String className, String disassembledClassName, String source, String expectedOutput,
+ int mode, boolean suppressConsole) throws ClassFormatException, IOException
+ {
+ compileAndDeploy(source, directoryName, className, suppressConsole);
try {
File directory = new File(EVAL_DIRECTORY, directoryName);
if (!directory.exists()) {
@@ -1025,11 +1028,11 @@ protected static class JavacTestOptions {
}
protected void checkClassFile(String directoryName, String className, String source, String expectedOutput, int mode) throws ClassFormatException, IOException {
- this.checkClassFile(directoryName, className, className, source, expectedOutput, mode);
+ this.checkClassFile(directoryName, className, className, source, expectedOutput, mode, false);
}
protected ClassFileReader getInternalClassFile(String directoryName, String className, String disassembledClassName, String source) throws ClassFormatException, IOException {
- compileAndDeploy(source, directoryName, className);
+ compileAndDeploy(source, directoryName, className, false);
try {
File directory = new File(EVAL_DIRECTORY, directoryName);
if (!directory.exists()) {
@@ -1102,7 +1105,7 @@ protected static class JavacTestOptions {
}
}
- protected void compileAndDeploy(String source, String directoryName, String className) {
+ protected void compileAndDeploy(String source, String directoryName, String className, boolean suppressConsole) {
File directory = new File(SOURCE_DIRECTORY);
if (!directory.exists()) {
if (!directory.mkdirs()) {
@@ -1155,7 +1158,17 @@ protected static class JavacTestOptions {
.append(Util.getJavaClassLibsAsString())
.append(SOURCE_DIRECTORY)
.append("\"");
- BatchCompiler.compile(buffer.toString(), new PrintWriter(System.out), new PrintWriter(System.err), null/*progress*/);
+ OutputStream out = System.out;
+ OutputStream err = System.err;
+ if (suppressConsole) {
+ out = err = new OutputStream() {
+ @Override
+ public void write(int b) {
+ // silently swallow
+ }
+ };
+ }
+ BatchCompiler.compile(buffer.toString(), new PrintWriter(out), new PrintWriter(err), null/*progress*/);
}
/*
diff --git a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/ClassFileReaderTest_1_4.java b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/ClassFileReaderTest_1_4.java
index cf697b1cb2..c7d5817caa 100644
--- a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/ClassFileReaderTest_1_4.java
+++ b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/ClassFileReaderTest_1_4.java
@@ -2772,7 +2772,7 @@ public class ClassFileReaderTest_1_4 extends AbstractRegressionTest {
"}";
String expectedOutput =
"private static class p.X$A {\n";
- checkClassFile("p", "X", "X$A", source, expectedOutput, ClassFileBytesDisassembler.DETAILED | ClassFileBytesDisassembler.COMPACT);
+ checkClassFile("p", "X", "X$A", source, expectedOutput, ClassFileBytesDisassembler.DETAILED | ClassFileBytesDisassembler.COMPACT, false);
}
// https://bugs.eclipse.org/bugs/show_bug.cgi?id=102473
diff --git a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/ClassFileReaderTest_1_5.java b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/ClassFileReaderTest_1_5.java
index 867e61d634..eb61d46174 100644
--- a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/ClassFileReaderTest_1_5.java
+++ b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/ClassFileReaderTest_1_5.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2014 IBM Corporation and others.
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -46,7 +46,7 @@ public class ClassFileReaderTest_1_5 extends AbstractRegressionTest {
* @deprecated
*/
private void checkClassFileUsingInputStream(String directoryName, String className, String source, String expectedOutput, int mode) throws IOException {
- compileAndDeploy(source, directoryName, className);
+ compileAndDeploy(source, directoryName, className, false);
BufferedInputStream inputStream = null;
try {
File directory = new File(EVAL_DIRECTORY, directoryName);
@@ -613,7 +613,7 @@ public class ClassFileReaderTest_1_5 extends AbstractRegressionTest {
" )\n" +
"}";
int mode = ClassFileBytesDisassembler.DETAILED | ClassFileBytesDisassembler.COMPACT | ClassFileBytesDisassembler.SYSTEM;
- checkClassFile("test", "AllTests", source, expectedOutput, mode);
+ checkClassFile("test", "AllTests", "AllTests", source, expectedOutput, mode, true/*suppress expected errors*/);
}
}

Back to the top