failing performance test for IDEA-236961

GitOrigin-RevId: 37ffa237be6c2c6965d8ce72854ef2976c6c837d
This commit is contained in:
Anna Kozlova
2020-04-14 09:20:37 +00:00
committed by intellij-monorepo-bot
parent d6c1f542f6
commit d439f31f50
2 changed files with 47 additions and 0 deletions
@@ -0,0 +1,34 @@
import java.util.*;
import java.util.stream.Collectors;
class MyTest {
static class Builder {
Builder put(int i) { return this;}
Builder put(long i) { return this;}
Builder put(short i) { return this;}
Builder put(double i) { return this;}
Builder put(float i) { return this;}
Builder put(boolean i) { return this;}
Builder put(byte i) { return this;}
Builder put(String i) { return this;}
Builder put(Object i) { return this;}
}
void addAll(Object o) {}
<T> List<T> addAll(List<T> l) { return l;}
void m(List<Foo> list){
add<caret>All(list.stream().map(it -> new Builder()
.put(it.getBar())
.put(it.getBar())
.put(it.getBar())
.put(it.getBar()))
.collect(Collectors.toList()));
}
static class Foo {
String getBar() {
return "";
}
}
}
@@ -20,6 +20,8 @@ import com.intellij.codeInspection.redundantCast.RedundantCastInspection;
import com.intellij.openapi.projectRoots.JavaSdkVersion;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.psi.PsiManager;
import com.intellij.psi.PsiMethodCallExpression;
import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.testFramework.IdeaTestUtil;
import com.intellij.testFramework.PlatformTestUtil;
import one.util.streamex.IntStreamEx;
@@ -72,6 +74,17 @@ public class InferencePerformanceTest extends LightDaemonAnalyzerTestCase {
public void testLongQualifierChainInsideLambda() {
PlatformTestUtil.startPerformanceTest("long qualifier chain", 12000, this::doTest).usesAllCPUCores().assertTiming();
}
public void _testLongQualifierChainInsideLambdaWithOverloads() {
PlatformTestUtil.startPerformanceTest("long qualifier chain", 12000, () -> {
configureByFile(BASE_PATH + "/" + getTestName(false) + ".java");
PsiMethodCallExpression callExpression =
PsiTreeUtil.getParentOfType(getFile().findElementAt(getEditor().getCaretModel().getOffset()), PsiMethodCallExpression.class);
assertNotNull(callExpression);
assertNotNull(callExpression.getText(), callExpression.getType());
}).usesAllCPUCores().assertTiming();
}
public void testLongQualifierChainInsideLambdaInTypeCast() {
enableInspectionTool(new RedundantCastInspection());
@Language("JAVA")