IDEA-36326 Quickfix for converting erroneous array access to list access implemented

This commit is contained in:
Danila Ponomarenko
2012-05-25 13:36:01 +04:00
parent 29eb460fba
commit 2f9deb86eb
15 changed files with 281 additions and 47 deletions
@@ -0,0 +1,10 @@
// "Replace with list access" "true"
import java.lang.Math;
import java.util.List;
class A {
void test(List<List> lists) {
System.out.println(lists.get(Math.max(Math.abs(-2), 3)));
}
}
@@ -0,0 +1,10 @@
// "Replace with list access" "true"
import java.lang.Integer;
import java.util.ArrayList;
class A {
void test(ArrayList list) {
System.out.println(list.get(new Integer(0)));
}
}
@@ -0,0 +1,9 @@
// "Replace with list access" "true"
import java.util.List;
class A {
void test(List<List> lists) {
System.out.println(lists.get(0).get(0));
}
}
@@ -0,0 +1,9 @@
// "Replace with list access" "true"
import java.util.ArrayList;
class A {
void test(ArrayList list) {
System.out.println(list.get(0));
}
}
@@ -0,0 +1,10 @@
// "Replace with list access" "true"
import java.lang.Math;
import java.util.List;
class A {
void test(List<List> lists) {
System.out.println(lis<caret>ts[Math.max(Math.abs(-2),3)]);
}
}
@@ -0,0 +1,10 @@
// "Replace with list access" "true"
import java.lang.Integer;
import java.util.ArrayList;
class A {
void test(ArrayList list) {
System.out.println(lis<caret>t[new Integer(0)]);
}
}
@@ -0,0 +1,10 @@
// "Replace with list access" "false"
import java.lang.Object;
import java.util.ArrayList;
class A {
void test(ArrayList list) {
System.out.println(lis<caret>t[new Object(3)]);
}
}
@@ -0,0 +1,9 @@
// "Replace with list access" "true"
import java.util.List;
class A {
void test(List<List> lists) {
System.out.println(li<caret>sts[0].get(0));
}
}
@@ -0,0 +1,6 @@
// "Replace with list access" "false"
class A {
void test(Collection list) {
System.out.println(lis<caret>t[0]);
}
}
@@ -0,0 +1,9 @@
// "Replace with list access" "true"
import java.util.ArrayList;
class A {
void test(ArrayList list) {
System.out.println(lis<caret>t[0]);
}
}
@@ -0,0 +1,29 @@
/*
* Copyright 2000-2012 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 com.intellij.codeInsight.daemon.quickFix;
/**
* @author Danila Ponomarenko
*/
public class ReplaceWithListAccessTest extends LightQuickFixTestCase {
public void test() throws Exception { doAllTests(); }
@Override
protected String getBasePath() {
return "/codeInsight/daemonCodeAnalyzer/quickFix/replaceWithListAccess";
}
}