diff options
author | 2016-09-20 21:46:04 +0000 | |
---|---|---|
committer | 2016-09-21 07:09:03 +0000 | |
commit | c1b7881023046b6764f312087849386db81d91f7 (patch) | |
tree | 44697133949671a4954df2651d17674bfbccc957 /src/java_tools/buildjar/javatests | |
parent | 7b7066100189440710885c17ab9aafe2dd73de55 (diff) |
Drop class initializers in turbine
--
MOS_MIGRATED_REVID=133756960
Diffstat (limited to 'src/java_tools/buildjar/javatests')
-rw-r--r-- | src/java_tools/buildjar/javatests/com/google/devtools/build/java/turbine/javac/JavacTurbineTest.java | 56 |
1 files changed, 41 insertions, 15 deletions
diff --git a/src/java_tools/buildjar/javatests/com/google/devtools/build/java/turbine/javac/JavacTurbineTest.java b/src/java_tools/buildjar/javatests/com/google/devtools/build/java/turbine/javac/JavacTurbineTest.java index 7562e3f070..395835efbc 100644 --- a/src/java_tools/buildjar/javatests/com/google/devtools/build/java/turbine/javac/JavacTurbineTest.java +++ b/src/java_tools/buildjar/javatests/com/google/devtools/build/java/turbine/javac/JavacTurbineTest.java @@ -740,9 +740,6 @@ public class JavacTurbineTest { "", " // access flags 0x9", " public static valueOf(Ljava/lang/String;)LTheEnum;", - "", - " // access flags 0x8", - " static <clinit>()V", "}", "" }; @@ -991,12 +988,7 @@ public class JavacTurbineTest { @Test public void privateMembers() throws Exception { - addSourceLines( - "Hello.java", - "class Hello {", - " private void f() {}", - " private int x;", - "}"); + addSourceLines("Hello.java", "class Hello {", " private void f() {}", " private int x;", "}"); compile(); @@ -1217,14 +1209,10 @@ public class JavacTurbineTest { @Test public void ignoreStrictDepsErrors() throws Exception { - Path lib = createClassJar("deps.jar", - JavacTurbineTest.class, - Lib.class); + Path lib = createClassJar("deps.jar", JavacTurbineTest.class, Lib.class); addSourceLines( - "Hello.java", - "import " + Lib.class.getCanonicalName() + ";", - "class Hello extends Lib {}"); + "Hello.java", "import " + Lib.class.getCanonicalName() + ";", "class Hello extends Lib {}"); optionsBuilder.addIndirectJarToTarget(lib.toString(), JarOwner.create("//lib")); optionsBuilder.addClassPathEntries(ImmutableList.of(lib.toString())); @@ -1240,4 +1228,42 @@ public class JavacTurbineTest { assertThat(errOutput.toString()).contains("warning: [strict]"); assertThat(result).isNotEqualTo(Result.OK_WITH_REDUCED_CLASSPATH); } + + @Test + public void clinit() throws Exception { + addSourceLines( + "Hello.java", + "class Hello {", + " public static int x;", + " static {", + " x = 42;", + " }", + "}"); + + compile(); + + Map<String, byte[]> outputs = collectOutputs(); + + assertThat(outputs.keySet()).containsExactly("Hello.class"); + + String text = textify(outputs.get("Hello.class")); + System.err.println(">>>"); + System.err.println(text); + System.err.println(">>>"); + String[] expected = { + "// class version 51.0 (51)", + "// access flags 0x20", + "class Hello {", + "", + "", + " // access flags 0x9", + " public static I x", + "", + " // access flags 0x0", + " <init>()V", + "}", + "" + }; + assertThat(text).isEqualTo(Joiner.on('\n').join(expected)); + } } |