mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IDEA-107730@VisibleForTesting is marked as a warning when called within class
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<problems>
|
||||
<problem>
|
||||
<file>B.java</file>
|
||||
<line>3</line>
|
||||
<description>Test-only method is called in production code</description>
|
||||
</problem>
|
||||
</problems>
|
||||
@@ -0,0 +1,16 @@
|
||||
public class A {
|
||||
void publicMethod() {
|
||||
invisibleMethod(1);
|
||||
visibleMethod(1);
|
||||
}
|
||||
|
||||
@com.google.common.annotations.VisibleForTesting()
|
||||
void invisibleMethod(int a) {
|
||||
|
||||
}
|
||||
|
||||
@com.google.common.annotations.VisibleForTesting(visibility=com.google.common.annotations.VisibleForTesting.Visibility.PROTECTED)
|
||||
void visibleMethod(int a) {
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
public class B {
|
||||
void publicMethod() {
|
||||
new A().invisibleMethod(2);
|
||||
new A().visibleMethod(2);
|
||||
}
|
||||
}
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
package com.google.common.annotations;
|
||||
|
||||
public @interface VisibleForTesting {
|
||||
enum Visibility {
|
||||
/** The element should be considered protected. */
|
||||
PROTECTED,
|
||||
/** The element should be considered package-private. */
|
||||
PACKAGE,
|
||||
/** The element should be considered private. */
|
||||
PRIVATE
|
||||
}
|
||||
|
||||
Visibility visibility() default Visibility.PRIVATE;
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
public class Test {
|
||||
void publicMethod() {
|
||||
new A().invisibleMethod(3);
|
||||
new A().visibleMethod(3);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user