java-decompiler: post-import cleanup (tests reorganized)

This commit is contained in:
Roman Shevchenko
2014-09-01 15:05:08 +04:00
parent 1a4e48d11d
commit 3854b67daa
24 changed files with 282 additions and 137 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,13 @@
package pkg;
public class TestClassFields {
private static int[] sizes;
private static String[] names = new String[]{"name1", "name2"};
static {
sizes = new int[names.length];
}
}

View File

@@ -0,0 +1,75 @@
package pkg;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.OptionalInt;
import java.util.function.Consumer;
import java.util.function.IntBinaryOperator;
import java.util.function.Predicate;
import java.util.function.Supplier;
public class TestClassLambda {
public int field = 0;
public void testLambda() {
List var1 = Arrays.asList(new Integer[]{Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(3), Integer.valueOf(4), Integer.valueOf(5), Integer.valueOf(6), Integer.valueOf(7)});
int var2 = (int)Math.random();
var1.forEach((var2x) -> {
int var3 = 2 * var2x.intValue();
System.out.println(var3 + var2 + this.field);
});
}
public void testLambda1() {
int var1 = (int)Math.random();
Runnable var2 = () -> {
System.out.println("hello" + var1);
};
Runnable var3 = () -> {
System.out.println("hello1" + var1);
};
}
public void testLambda2() {
reduce((var0, var1) -> {
return Math.max(var0, var1);
});
}
public void testLambda3() {
reduce(Math::max);
}
public void testLambda4() {
reduce(TestClassLambda::localMax);
}
public void testLambda5() {
String var1 = "abcd";
function(var1::toString);
}
public void testLambda6() {
ArrayList var1 = new ArrayList();
int var2 = var1.size() * 2;
int var3 = var1.size() * 5;
var1.removeIf((var2x) -> {
return var2 >= var2x.length() && var2x.length() <= var3;
});
}
public static OptionalInt reduce(IntBinaryOperator var0) {
return null;
}
public static String function(Supplier var0) {
return (String)var0.get();
}
public static int localMax(int var0, int var1) {
return 0;
}
}

View File

@@ -0,0 +1,45 @@
package pkg;
public class TestClassLoop {
public static void testSimpleInfinite() {
while(true) {
System.out.println();
}
}
public static void testFinally() {
boolean var0 = Math.random() > 0.0D;
while(true) {
try {
if(!var0) {
return;
}
} finally {
System.out.println("1");
}
}
}
public static void testFinallyContinue() {
boolean var0 = Math.random() > 0.0D;
while(true) {
while(true) {
try {
System.out.println("1");
break;
} finally {
if(var0) {
System.out.println("3");
continue;
}
}
}
System.out.println("4");
}
}
}

View File

@@ -0,0 +1,16 @@
package pkg;
public class TestClassSwitch {
public void testCaseOrder(int var1) {
switch(var1) {
case 5:
System.out.println(5);
default:
return;
case 13:
System.out.println(13);
}
}
}

View File

@@ -0,0 +1,50 @@
package pkg;
import java.util.ArrayList;
import java.util.List;
public class TestClassTypes {
public void testBoolean() {
byte var1 = 0;
long var2 = System.currentTimeMillis();
if(var2 % 2L > 0L) {
var1 = 1;
} else if(var2 % 3L > 0L) {
var1 = 2;
}
if(var1 == 1) {
System.out.println();
}
}
public boolean testBit(int var1) {
return (var1 & 1) == 1;
}
public void testSwitchConsts(int var1) {
switch(var1) {
case 88:
System.out.println("1");
break;
case 656:
System.out.println("2");
break;
case 65201:
case 65489:
System.out.println("3");
}
}
public void testAssignmentType(List var1) {
Object var2 = var1;
if(var1 != null) {
((List)(var2 = new ArrayList(var1))).add("23");
}
System.out.println(((List)var2).size());
}
}

View File

@@ -0,0 +1,43 @@
package pkg;
public class TestClassVar {
private boolean field_boolean = Math.random() > 0.0D;
public int field_int = 0;
public void testFieldSSAU() {
for(int var1 = 0; var1 < 10; ++var1) {
try {
System.out.println();
} finally {
if(this.field_boolean) {
System.out.println();
}
}
}
}
public Long testFieldSSAU1() {
return new Long((long)(this.field_int++));
}
public void testComplexPropagation() {
int var1 = 0;
while(var1 < 10) {
int var2;
for(var2 = var1; var1 < 10 && var1 == 0; ++var1) {
;
}
if(var2 != var1) {
System.out.println();
}
}
}
}

View File

@@ -0,0 +1,28 @@
/*
* Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package pkg;
public class TestClassFields {
private static int[] sizes;
private static String[] names;
static {
names = new String[]{"name1", "name2"};
sizes = new int[names.length];
}
}

View File

@@ -0,0 +1,82 @@
/*
* Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package pkg;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.OptionalInt;
import java.util.function.IntBinaryOperator;
import java.util.function.Supplier;
public class TestClassLambda {
public int field = 0;
public void testLambda() {
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7);
int b = (int)Math.random();
list.forEach(n -> {int a = 2 * n; System.out.println(a + b + field);});
}
public void testLambda1() {
int a = (int)Math.random();
Runnable r = () -> { System.out.println("hello" + a); };
Runnable r1 = () -> { System.out.println("hello1" + a); };
}
public void testLambda2() {
reduce((left, right) -> Math.max(left, right));
}
public void testLambda3() { // IDEA-127301
reduce(Math::max);
}
public void testLambda4() {
reduce(TestClassLambda::localMax);
}
public void testLambda5() {
String x = "abcd";
function(x::toString);
}
public void testLambda6() {
List<String> list = new ArrayList<String>();
int bottom = list.size() * 2;
int top = list.size() * 5;
list.removeIf( s -> (bottom >= s.length() && s.length() <= top) );
}
public static OptionalInt reduce(IntBinaryOperator op) {
return null;
}
public static String function(Supplier<String> supplier) {
return supplier.get();
}
public static int localMax(int first, int second) {
return 0;
}
}

View File

@@ -0,0 +1,63 @@
/*
* Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package pkg;
public class TestClassLoop {
public static void testSimpleInfinite() {
while(true) {
System.out.println();
}
}
public static void testFinally() {
boolean a = (Math.random() > 0);
while(true) {
try {
if(!a) {
return;
}
} finally {
System.out.println("1");
}
}
}
public static void testFinallyContinue() {
boolean a = (Math.random() > 0);
for(;;) {
try {
System.out.println("1");
} finally {
if(a) {
System.out.println("3");
continue;
}
}
System.out.println("4");
}
}
}

View File

@@ -0,0 +1,31 @@
/*
* Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package pkg;
public class TestClassSwitch {
public void testCaseOrder(int a) {
switch(a) {
case 13:
System.out.println(13);
return;
case 5:
System.out.println(5);
}
}
}

View File

@@ -0,0 +1,69 @@
/*
* Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package pkg;
import java.util.ArrayList;
import java.util.List;
public class TestClassTypes {
public void testBoolean() {
byte var7 = 0;
long time = System.currentTimeMillis();
if(time % 2 > 0) {
var7 = 1;
} else if(time % 3 > 0) {
var7 = 2;
}
if(var7 == 1) {
System.out.println();
}
}
public boolean testBit(int var0) {
return (var0 & 1) == 1;
}
public void testSwitchConsts(int a) {
switch (a) {
case 88:
System.out.println("1");
break;
case 656:
System.out.println("2");
break;
case 65201:
case 65489:
System.out.println("3");
}
}
public void testAssignmentType(List list) {
List a = list;
if(a != null) {
(a = new ArrayList(a)).add("23");
}
System.out.println(a.size());
}
}

View File

@@ -0,0 +1,59 @@
/*
* Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package pkg;
public class TestClassVar {
private boolean field_boolean = (Math.random() > 0);
public int field_int = 0;
public void testFieldSSAU() {
for(int i = 0; i < 10; i++) {
try {
System.out.println();
} finally {
if (field_boolean) {
System.out.println();
}
}
}
}
public Long testFieldSSAU1() { // IDEA-127466
return new Long(field_int++);
}
public void testComplexPropagation() {
int a = 0;
while (a < 10) {
int b = a;
for(; a < 10 && a == 0; a++) {}
if (b != a) {
System.out.println();
}
}
}
}