diff --git a/plugins/java-i18n/java-i18n.iml b/plugins/java-i18n/java-i18n.iml
index 08852084e604..b2f011fe2f7c 100644
--- a/plugins/java-i18n/java-i18n.iml
+++ b/plugins/java-i18n/java-i18n.iml
@@ -21,6 +21,7 @@
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/annotationArgument/expected.xml b/plugins/java-i18n/testData/inspections/i18n/annotationArgument/expected.xml
new file mode 100644
index 000000000000..d704d58ed391
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/annotationArgument/expected.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/annotationArgument/src/Foo.java b/plugins/java-i18n/testData/inspections/i18n/annotationArgument/src/Foo.java
new file mode 100644
index 000000000000..7bbdc7d09cd3
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/annotationArgument/src/Foo.java
@@ -0,0 +1,11 @@
+@interface Language {
+ @org.jetbrains.annotations.NonNls
+ java.lang.String value();
+}
+
+class Foo {
+ void foo() {
+ @Language("abcdefgh")
+ String s;
+ }
+}
\ No newline at end of file
diff --git a/plugins/java-i18n/testData/inspections/i18n/anonymousClassConstructorParameter/expected.xml b/plugins/java-i18n/testData/inspections/i18n/anonymousClassConstructorParameter/expected.xml
new file mode 100644
index 000000000000..fe72ddee8876
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/anonymousClassConstructorParameter/expected.xml
@@ -0,0 +1,9 @@
+
+
+
+ Test.java
+ 8
+ Hard coded string literal
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/anonymousClassConstructorParameter/src/Test.java b/plugins/java-i18n/testData/inspections/i18n/anonymousClassConstructorParameter/src/Test.java
new file mode 100644
index 000000000000..dbd2e469ac2c
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/anonymousClassConstructorParameter/src/Test.java
@@ -0,0 +1,14 @@
+class Test {
+ private class InnerTest {
+ public InnerTest(String s) { }
+ public abstract void run();
+ }
+
+ public void foo(String s) {
+ bar(new InnerTest("Literal") { public void run() { } });
+ }
+
+ public void bar(InnerTest t) {
+
+ }
+}
diff --git a/plugins/java-i18n/testData/inspections/i18n/constructorCallOfNonNlsVariable/expected.xml b/plugins/java-i18n/testData/inspections/i18n/constructorCallOfNonNlsVariable/expected.xml
new file mode 100644
index 000000000000..d704d58ed391
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/constructorCallOfNonNlsVariable/expected.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/constructorCallOfNonNlsVariable/src/Test.java b/plugins/java-i18n/testData/inspections/i18n/constructorCallOfNonNlsVariable/src/Test.java
new file mode 100644
index 000000000000..ba265eccd255
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/constructorCallOfNonNlsVariable/src/Test.java
@@ -0,0 +1,6 @@
+class Test {
+ void foo() {
+ @org.jetbrains.annotations.NonNls StringBuffer buffer = new StringBuffer("text");
+ buffer = new StringBuffer("text");
+ }
+}
\ No newline at end of file
diff --git a/plugins/java-i18n/testData/inspections/i18n/enum/expected.xml b/plugins/java-i18n/testData/inspections/i18n/enum/expected.xml
new file mode 100644
index 000000000000..4bc4c6551605
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/enum/expected.xml
@@ -0,0 +1,14 @@
+
+
+
+ Test.java
+ 2
+ Hard coded string literal
+
+
+ Test.java
+ 3
+ Hard coded string literal
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/enum/src/Test.java b/plugins/java-i18n/testData/inspections/i18n/enum/src/Test.java
new file mode 100644
index 000000000000..0f167a69984e
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/enum/src/Test.java
@@ -0,0 +1,21 @@
+enum Test {
+ CHECKIN("Text1"),
+ ADD("Rext2");
+
+ Test(final String id) {
+ myId = id;
+ }
+
+ private final String myId;
+}
+
+enum Test2 {
+ CHECKIN("Text1"),
+ ADD("Rext2");
+
+ Test2(@org.jetbrains.annotations.NonNls final String id) {
+ myId = id;
+ }
+
+ private final String myId;
+}
\ No newline at end of file
diff --git a/plugins/java-i18n/testData/inspections/i18n/fields/expected.xml b/plugins/java-i18n/testData/inspections/i18n/fields/expected.xml
new file mode 100644
index 000000000000..d704d58ed391
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/fields/expected.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/fields/src/Test.java b/plugins/java-i18n/testData/inspections/i18n/fields/src/Test.java
new file mode 100644
index 000000000000..eb902100eda3
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/fields/src/Test.java
@@ -0,0 +1,7 @@
+class Foo {
+ @org.jetbrains.annotations.NonNls String field;
+ @org.jetbrains.annotations.NonNls String field2 = "text1";
+ void foo() {
+ field = "text2";
+ }
+}
\ No newline at end of file
diff --git a/plugins/java-i18n/testData/inspections/i18n/formTabbedPaneTitle/expected.xml b/plugins/java-i18n/testData/inspections/i18n/formTabbedPaneTitle/expected.xml
new file mode 100644
index 000000000000..9501f4944ff6
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/formTabbedPaneTitle/expected.xml
@@ -0,0 +1,9 @@
+
+
+
+ Test.form
+ 1
+ Hard coded string literal
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/formTabbedPaneTitle/src/Test.form b/plugins/java-i18n/testData/inspections/i18n/formTabbedPaneTitle/src/Test.form
new file mode 100644
index 000000000000..c560e0f8cd0d
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/formTabbedPaneTitle/src/Test.form
@@ -0,0 +1,23 @@
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/hardCodedStringLiteralAsParameter/expected.xml b/plugins/java-i18n/testData/inspections/i18n/hardCodedStringLiteralAsParameter/expected.xml
new file mode 100644
index 000000000000..c93de21f0c36
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/hardCodedStringLiteralAsParameter/expected.xml
@@ -0,0 +1,9 @@
+
+
+
+ Foo.java
+ 3
+ Hard coded string literal
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/hardCodedStringLiteralAsParameter/src/Foo.java b/plugins/java-i18n/testData/inspections/i18n/hardCodedStringLiteralAsParameter/src/Foo.java
new file mode 100644
index 000000000000..833bfdada65d
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/hardCodedStringLiteralAsParameter/src/Foo.java
@@ -0,0 +1,5 @@
+class Foo {
+ void foo(String s) {
+ foo("text");
+ }
+}
\ No newline at end of file
diff --git a/plugins/java-i18n/testData/inspections/i18n/initializerInAnonymousClass/expected.xml b/plugins/java-i18n/testData/inspections/i18n/initializerInAnonymousClass/expected.xml
new file mode 100644
index 000000000000..b66d698faee3
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/initializerInAnonymousClass/expected.xml
@@ -0,0 +1,8 @@
+
+
+
+ Test.java
+ 7
+ Hard coded string literal
+
+
\ No newline at end of file
diff --git a/plugins/java-i18n/testData/inspections/i18n/initializerInAnonymousClass/src/Test.java b/plugins/java-i18n/testData/inspections/i18n/initializerInAnonymousClass/src/Test.java
new file mode 100644
index 000000000000..01f27af477f9
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/initializerInAnonymousClass/src/Test.java
@@ -0,0 +1,14 @@
+import java.awt.event.ActionListener;
+import java.awt.event.ActionEvent;
+public class Test {
+ public static void main(String[] args){
+ ActionListener listener = new ActionListener(){
+ {
+ final String test = "problem reported twice";
+ }
+ public void actionPerformed(final ActionEvent e) {
+
+ }
+ };
+ }
+}
\ No newline at end of file
diff --git a/plugins/java-i18n/testData/inspections/i18n/localVariables/expected.xml b/plugins/java-i18n/testData/inspections/i18n/localVariables/expected.xml
new file mode 100644
index 000000000000..8e7958ce9451
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/localVariables/expected.xml
@@ -0,0 +1,14 @@
+
+
+
+ Test.java
+ 3
+ Hard coded string literal
+
+
+ Test.java
+ 8
+ Hard coded string literal
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/localVariables/src/Test.java b/plugins/java-i18n/testData/inspections/i18n/localVariables/src/Test.java
new file mode 100644
index 000000000000..51c6726e264d
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/localVariables/src/Test.java
@@ -0,0 +1,11 @@
+class Foo {
+ void foo() {
+ String v1 = "text";
+ @org.jetbrains.annotations.NonNls String v2 = "text";
+ String v3;
+ @org.jetbrains.annotations.NonNls String v4;
+
+ v3 = "text";
+ v4 = "text";
+ }
+}
\ No newline at end of file
diff --git a/plugins/java-i18n/testData/inspections/i18n/nonNlsArray/expected.xml b/plugins/java-i18n/testData/inspections/i18n/nonNlsArray/expected.xml
new file mode 100644
index 000000000000..d704d58ed391
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/nonNlsArray/expected.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/nonNlsArray/src/Test.java b/plugins/java-i18n/testData/inspections/i18n/nonNlsArray/src/Test.java
new file mode 100644
index 000000000000..073910f6e79e
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/nonNlsArray/src/Test.java
@@ -0,0 +1,9 @@
+class Foo {
+ @org.jetbrains.annotations.NonNls String[] myArray = new String[] {"text1", "text2"};
+ @org.jetbrains.annotations.NonNls Stirng[] foo() {
+ myArray = new String[] {"text3", "text4"};
+ myArray[0] = "text5";
+
+ return new String[] {"text6"};
+ }
+}
\ No newline at end of file
diff --git a/plugins/java-i18n/testData/inspections/i18n/nonNlsComment/expected.xml b/plugins/java-i18n/testData/inspections/i18n/nonNlsComment/expected.xml
new file mode 100644
index 000000000000..e296a5c15fdf
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/nonNlsComment/expected.xml
@@ -0,0 +1,16 @@
+
+
+
+ Foo.java
+ 4
+ Hard coded strings
+ Hard coded string literal: 'xxxxx'
+
+
+ Foo.java
+ 9
+ Hard coded strings
+ Hard coded string literal: 'MYNON-NLS'
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/nonNlsComment/src/Foo.java b/plugins/java-i18n/testData/inspections/i18n/nonNlsComment/src/Foo.java
new file mode 100644
index 000000000000..d028b09721aa
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/nonNlsComment/src/Foo.java
@@ -0,0 +1,12 @@
+class Foo {
+ void foo(String... s) {
+ foo("literal", "literal"); // MYNON-NLS0
+ String d = "xxxxx"; // NON-NLS
+ String d0 = "xxxxx", d01="sssss"; //MYNON-NLS
+ String d1 = "xxxxx"; // MYNON-NLS?
+
+ String d2 = "xxxxx"; /* MYNON-NLS ??? */
+ String wtf="MYNON-NLS";
+ String dw2 = "xxxxx"; String wtw="MYNON-NLS"; /* MYNON-NLS ??? */
+ }
+}
\ No newline at end of file
diff --git a/plugins/java-i18n/testData/inspections/i18n/parameterInNewAnonymousClass/expected.xml b/plugins/java-i18n/testData/inspections/i18n/parameterInNewAnonymousClass/expected.xml
new file mode 100644
index 000000000000..d704d58ed391
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/parameterInNewAnonymousClass/expected.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/parameterInNewAnonymousClass/src/Test.java b/plugins/java-i18n/testData/inspections/i18n/parameterInNewAnonymousClass/src/Test.java
new file mode 100644
index 000000000000..46a6b8db81f3
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/parameterInNewAnonymousClass/src/Test.java
@@ -0,0 +1,11 @@
+class Test {
+ public static final Test TEST = new Test("text") {
+ public void foo() {}
+ };
+
+ public Test(@org.jetbrains.annotations.NonNls String p) {
+
+ }
+
+ public abstract void foo();
+}
\ No newline at end of file
diff --git a/plugins/java-i18n/testData/inspections/i18n/parameterInheritsNonNlsAnnotationFromSuper/expected.xml b/plugins/java-i18n/testData/inspections/i18n/parameterInheritsNonNlsAnnotationFromSuper/expected.xml
new file mode 100644
index 000000000000..d704d58ed391
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/parameterInheritsNonNlsAnnotationFromSuper/expected.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/parameterInheritsNonNlsAnnotationFromSuper/src/Test.java b/plugins/java-i18n/testData/inspections/i18n/parameterInheritsNonNlsAnnotationFromSuper/src/Test.java
new file mode 100644
index 000000000000..06a7501ac22e
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/parameterInheritsNonNlsAnnotationFromSuper/src/Test.java
@@ -0,0 +1,17 @@
+class A {
+ void foo(@org.jetbrains.annotations.NonNls String p){
+
+ }
+}
+
+class B extends A{
+ void foo(String p){
+
+ }
+}
+
+class C extends B{
+ void foo(String p){
+ foo("text");
+ }
+}
\ No newline at end of file
diff --git a/plugins/java-i18n/testData/inspections/i18n/recursiveInheritance/expected.xml b/plugins/java-i18n/testData/inspections/i18n/recursiveInheritance/expected.xml
new file mode 100644
index 000000000000..a8e3c1edbb25
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/recursiveInheritance/expected.xml
@@ -0,0 +1,24 @@
+
+
+
+ Test.java
+ 2
+ Hard coded string literal
+
+
+ Test.java
+ 6
+ Hard coded string literal
+
+
+ Test.java
+ 11
+ Hard coded string literal
+
+
+ Test.java
+ 12
+ Hard coded string literal
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/recursiveInheritance/src/Test.java b/plugins/java-i18n/testData/inspections/i18n/recursiveInheritance/src/Test.java
new file mode 100644
index 000000000000..fa637486fae2
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/recursiveInheritance/src/Test.java
@@ -0,0 +1,14 @@
+class A extends C{
+ String foo(String p){ return "text";}
+}
+
+class B extends A{
+ String foo(String p){ return "text";}
+}
+
+class C extends A{
+ String foo(String p){
+ foo("text");
+ return "text";
+ }
+}
\ No newline at end of file
diff --git a/plugins/java-i18n/testData/inspections/i18n/returnTypeInheritsNonNlsAnnotationFromParent/expected.xml b/plugins/java-i18n/testData/inspections/i18n/returnTypeInheritsNonNlsAnnotationFromParent/expected.xml
new file mode 100644
index 000000000000..d704d58ed391
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/returnTypeInheritsNonNlsAnnotationFromParent/expected.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/returnTypeInheritsNonNlsAnnotationFromParent/src/Test.java b/plugins/java-i18n/testData/inspections/i18n/returnTypeInheritsNonNlsAnnotationFromParent/src/Test.java
new file mode 100644
index 000000000000..4e1d8de48f39
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/returnTypeInheritsNonNlsAnnotationFromParent/src/Test.java
@@ -0,0 +1,17 @@
+interface I {
+ @org.jetbrains.annotations.NonNls String foo();
+}
+
+class B implements I{
+ public String foo() {
+ return "text";
+ }
+}
+
+class A {
+ B inner = new B() {
+ public String foo() {
+ return "text";
+ }
+ };
+}
\ No newline at end of file
diff --git a/plugins/java-i18n/testData/inspections/i18n/stringBufferNonNls/expected.xml b/plugins/java-i18n/testData/inspections/i18n/stringBufferNonNls/expected.xml
new file mode 100644
index 000000000000..d704d58ed391
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/stringBufferNonNls/expected.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/stringBufferNonNls/src/Bar.java b/plugins/java-i18n/testData/inspections/i18n/stringBufferNonNls/src/Bar.java
new file mode 100644
index 000000000000..c29888bb8aad
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/stringBufferNonNls/src/Bar.java
@@ -0,0 +1,12 @@
+import java.util.Collection;
+
+class SBTest {
+ void foo(@org.jetbrains.annotations.NonNls Collection coll) {
+ coll.add("aaa");
+ }
+
+ void foo(@org.jetbrains.annotations.NonNls StringBuffer buffer) {
+ buffer.append("aaa");
+ buffer.append("aaa").append("bbb").append("do not i18n this too");
+ }
+}
diff --git a/plugins/java-i18n/testData/inspections/i18n/switchOnNonNlsString/expected.xml b/plugins/java-i18n/testData/inspections/i18n/switchOnNonNlsString/expected.xml
new file mode 100644
index 000000000000..d704d58ed391
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/switchOnNonNlsString/expected.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/switchOnNonNlsString/src/Test.java b/plugins/java-i18n/testData/inspections/i18n/switchOnNonNlsString/src/Test.java
new file mode 100644
index 000000000000..72b5aea70436
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/switchOnNonNlsString/src/Test.java
@@ -0,0 +1,8 @@
+class Test {
+ void foo(@org.jetbrains.annotations.NonNls String s) {
+ switch (s) {
+ case "foooooo":
+ break;
+ }
+ }
+}
\ No newline at end of file
diff --git a/plugins/java-i18n/testData/inspections/i18n/varargNonNlsParameter/expected.xml b/plugins/java-i18n/testData/inspections/i18n/varargNonNlsParameter/expected.xml
new file mode 100644
index 000000000000..d704d58ed391
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/varargNonNlsParameter/expected.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/plugins/java-i18n/testData/inspections/i18n/varargNonNlsParameter/src/Foo.java b/plugins/java-i18n/testData/inspections/i18n/varargNonNlsParameter/src/Foo.java
new file mode 100644
index 000000000000..eb89d7544a85
--- /dev/null
+++ b/plugins/java-i18n/testData/inspections/i18n/varargNonNlsParameter/src/Foo.java
@@ -0,0 +1,5 @@
+class Foo {
+ void foo(@org.jetbrains.annotations.NonNls String... s) {
+ foo("literal", "literal");
+ }
+}
\ No newline at end of file
diff --git a/plugins/java-i18n/testSrc/com/intellij/codeInspection/i18n/I18NInspectionTest.java b/plugins/java-i18n/testSrc/com/intellij/codeInspection/i18n/I18NInspectionTest.java
new file mode 100644
index 000000000000..dd0a1ac39fa1
--- /dev/null
+++ b/plugins/java-i18n/testSrc/com/intellij/codeInspection/i18n/I18NInspectionTest.java
@@ -0,0 +1,62 @@
+/*
+ * Copyright (c) 2005 JetBrains s.r.o. All Rights Reserved.
+ */
+package com.intellij.codeInspection.i18n;
+
+import com.intellij.openapi.application.PluginPathManager;
+import com.intellij.openapi.roots.LanguageLevelProjectExtension;
+import com.intellij.pom.java.LanguageLevel;
+import com.intellij.psi.JavaPsiFacade;
+import com.intellij.testFramework.InspectionTestCase;
+
+/**
+ * @author lesya
+ */
+public class I18NInspectionTest extends InspectionTestCase {
+ private void doTest() throws Exception {
+ doTest(new I18nInspection());
+ }
+ private void doTest(I18nInspection tool) throws Exception {
+ doTest("i18n/" + getTestName(true), tool);
+ }
+
+ public void testHardCodedStringLiteralAsParameter() throws Exception{ doTest(); }
+ public void testReturnTypeInheritsNonNlsAnnotationFromParent() throws Exception{ doTest(); }
+ public void testRecursiveInheritance() throws Exception { doTest(); }
+ public void testParameterInheritsNonNlsAnnotationFromSuper() throws Exception { doTest(); }
+ public void testLocalVariables() throws Exception { doTest(); }
+ public void testFields() throws Exception{ doTest(); }
+ public void testAnonymousClassConstructorParameter() throws Exception { doTest(); }
+ public void testStringBufferNonNls() throws Exception { doTest(); }
+ public void testEnum() throws Exception {
+ final JavaPsiFacade facade = getJavaFacade();
+ final LanguageLevel effectiveLanguageLevel = LanguageLevelProjectExtension.getInstance(facade.getProject()).getLanguageLevel();
+ LanguageLevelProjectExtension.getInstance(facade.getProject()).setLanguageLevel(LanguageLevel.JDK_1_5);
+ try {
+ doTest();
+ }
+ finally {
+ LanguageLevelProjectExtension.getInstance(facade.getProject()).setLanguageLevel(effectiveLanguageLevel);
+ }
+ }
+
+ public void testFormTabbedPaneTitle() throws Exception { doTest(); }
+ public void testVarargNonNlsParameter() throws Exception { doTest(); }
+ public void testInitializerInAnonymousClass() throws Exception{ doTest(); }
+ public void testNonNlsArray() throws Exception{ doTest(); }
+ public void testParameterInNewAnonymousClass() throws Exception{ doTest(); }
+ public void testConstructorCallOfNonNlsVariable() throws Exception{ doTest(); }
+ public void testSwitchOnNonNlsString() throws Exception{ doTest(); }
+ public void testNonNlsComment() throws Exception{
+ I18nInspection inspection = new I18nInspection();
+ inspection.nonNlsCommentPattern = "MYNON-NLS";
+ inspection.cacheNonNlsCommentPattern();
+ doTest(inspection);
+ }
+ public void testAnnotationArgument() throws Exception{ doTest(); }
+
+ @Override
+ protected String getTestDataPath() {
+ return PluginPathManager.getPluginHomePath("java-i18n") + "/testData/inspections";
+ }
+}