blob: d40b0139af33223c194ef94c8893385bd38a01cc [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2000, 2006 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
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.jdt.core.tests.compiler.parser;
public class AnnotationSelectionTest extends AbstractSelectionTest {
public AnnotationSelectionTest(String testName) {
super(testName);
}
/*
* Selection at specific location
*/
public void test0001() {
String str =
"public @MyAnn class X { \n" +
"} \n";
String selection = "MyAnn";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn>";
String completionIdentifier = "MyAnn";
String expectedUnitDisplayString =
"public @<SelectOnType:MyAnn> class X {\n" +
" public X() {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
public void test0002() {
String str =
"public @MyAnn.ZZ class X { \n" +
"} \n";
String selection = "MyAnn";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn>";
String completionIdentifier = "MyAnn";
String expectedUnitDisplayString =
"public @<SelectOnType:MyAnn> class X {\n" +
" public X() {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
public void test0003() {
String str =
"public @MyAnn.ZZ class X { \n" +
"} \n";
String selection = "ZZ";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn.ZZ>";
String completionIdentifier = "ZZ";
String expectedUnitDisplayString =
"public @<SelectOnType:MyAnn.ZZ> class X {\n" +
" public X() {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn.ZZ";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
public void test0004() {
String str =
"public @MyAnn.ZZ class X { \n" +
" \n";
String selection = "ZZ";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn.ZZ>";
String completionIdentifier = "ZZ";
String expectedUnitDisplayString =
"public @<SelectOnType:MyAnn.ZZ> class X {\n" +
" public X() {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn.ZZ";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
//TODO enable this test when selection parser support this test case
public void _test0005() {
String str =
"public @MyAnn.ZZ" +
" \n";
String selection = "ZZ";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn.ZZ>";
String completionIdentifier = "ZZ";
String expectedUnitDisplayString =
"public @<SelectOnType:MyAnn.ZZ> class X {\n" +
" public X() {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn.ZZ";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
public void test0006() {
String str =
"public class X {" +
" public @MyAnn void foo() {" +
" }" +
"} \n";
String selection = "MyAnn";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn>";
String completionIdentifier = "MyAnn";
String expectedUnitDisplayString =
"public class X {\n" +
" public X() {\n" +
" }\n" +
" public @<SelectOnType:MyAnn> void foo() {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
public void test0007() {
String str =
"public class X {" +
" public @MyAnn void foo(" +
" " +
"} \n";
String selection = "MyAnn";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn>";
String completionIdentifier = "MyAnn";
String expectedUnitDisplayString =
"public class X {\n" +
" public X() {\n" +
" }\n" +
" public @<SelectOnType:MyAnn> void foo() {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
public void test0008() {
String str =
"public class X {" +
" public @MyAnn Object var;" +
"} \n";
String selection = "MyAnn";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn>";
String completionIdentifier = "MyAnn";
String expectedUnitDisplayString =
"public class X {\n" +
" public @<SelectOnType:MyAnn> Object var;\n" +
" public X() {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
public void test0009() {
String str =
"public class X {" +
" public @MyAnn Object var" +
"} \n";
String selection = "MyAnn";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn>";
String completionIdentifier = "MyAnn";
String expectedUnitDisplayString =
"public class X {\n" +
" public @<SelectOnType:MyAnn> Object var;\n" +
" public X() {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
public void test0010() {
String str =
"public class X {" +
" public void foo(@MyAnn int i) {" +
" }" +
"} \n";
String selection = "MyAnn";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn>";
String completionIdentifier = "MyAnn";
String expectedUnitDisplayString =
"public class X {\n" +
" public X() {\n" +
" }\n" +
" public void foo(@<SelectOnType:MyAnn> int i) {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
public void test0011() {
String str =
"public class X {" +
" public @MyAnn class Y {" +
" }" +
"} \n";
String selection = "MyAnn";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn>";
String completionIdentifier = "MyAnn";
String expectedUnitDisplayString =
"public class X {\n" +
" public @<SelectOnType:MyAnn> class Y {\n" +
" public Y() {\n" +
" }\n" +
" }\n" +
" public X() {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
public void test0012() {
String str =
"public class X {" +
" public void foo() {" +
" @MyAnn int i;" +
" }" +
"} \n";
String selection = "MyAnn";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn>";
String completionIdentifier = "MyAnn";
String expectedUnitDisplayString =
"public class X {\n" +
" public X() {\n" +
" }\n" +
" public void foo() {\n" +
" @<SelectOnType:MyAnn> int i;\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkMethodParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
public void test0013() {
String str =
"public @MyAnn() class X {" +
"} \n";
String selection = "MyAnn";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn>";
String completionIdentifier = "MyAnn";
String expectedUnitDisplayString =
"public @<SelectOnType:MyAnn>() class X {\n" +
" public X() {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
public void test0014() {
String str =
"public @MyAnn(A.B) class X {" +
"} \n";
String selection = "MyAnn";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn>";
String completionIdentifier = "MyAnn";
String expectedUnitDisplayString =
"public @<SelectOnType:MyAnn>(A.B) class X {\n" +
" public X() {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
public void test0015() {
String str =
"public @MyAnn(value = \"\") class X {" +
"} \n";
String selection = "MyAnn";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn>";
String completionIdentifier = "MyAnn";
String expectedUnitDisplayString =
"public @<SelectOnType:MyAnn>(value = \"\") class X {\n" +
" public X() {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
public void test0016() {
String str =
"public @MyAnn(value1 = \"\", value2 = \"\") class X {" +
"} \n";
String selection = "MyAnn";
String expectedCompletionNodeToString = "<SelectOnType:MyAnn>";
String completionIdentifier = "MyAnn";
String expectedUnitDisplayString =
"public @<SelectOnType:MyAnn>(value1 = \"\",value2 = \"\") class X {\n" +
" public X() {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "MyAnn";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
/*
* Selection at specific location
*/
public void test0017() {
String str =
"public @MyAnn(value1 = \"\", value2 = \"\") class X {" +
"} \n";
String selection = "value1";
String expectedCompletionNodeToString = "<SelectOnName:value1>";
String completionIdentifier = "value1";
String expectedUnitDisplayString =
"public @MyAnn(<SelectOnName:value1>,value2 = \"\") class X {\n" +
" public X() {\n" +
" }\n" +
"}\n";
String expectedReplacedSource = "value1";
String testName = "<select type>";
int selectionStart = str.lastIndexOf(selection);
int selectionEnd = str.lastIndexOf(selection) + selection.length() - 1;
this.checkDietParse(
str.toCharArray(),
selectionStart,
selectionEnd,
expectedCompletionNodeToString,
expectedUnitDisplayString,
completionIdentifier,
expectedReplacedSource,
testName);
}
}