Fix isValidJavaFqName
This commit is contained in:
committed by
Space Team
parent
4f3add8f7a
commit
fed86a57e3
@@ -54,12 +54,19 @@ public class FqNameTest {
|
|||||||
public void isValidJavaFqName() {
|
public void isValidJavaFqName() {
|
||||||
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName(""));
|
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName(""));
|
||||||
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName("a"));
|
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName("a"));
|
||||||
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName("1"));
|
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName("a1"));
|
||||||
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName("a.a"));
|
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName("a.a"));
|
||||||
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName("org.jetbrains"));
|
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName("org.jetbrains"));
|
||||||
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName("$"));
|
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName("$"));
|
||||||
|
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName("_"));
|
||||||
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName("org.A$B"));
|
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName("org.A$B"));
|
||||||
|
Assert.assertTrue(FqNamesUtilKt.isValidJavaFqName("晴れの日"));
|
||||||
|
|
||||||
|
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName(" "));
|
||||||
|
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName(" a"));
|
||||||
|
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName("a "));
|
||||||
|
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName("1"));
|
||||||
|
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName("1a"));
|
||||||
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName("."));
|
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName("."));
|
||||||
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName(".."));
|
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName(".."));
|
||||||
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName("a."));
|
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName("a."));
|
||||||
@@ -69,5 +76,6 @@ public class FqNameTest {
|
|||||||
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName("a.b."));
|
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName("a.b."));
|
||||||
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName("a.b...)"));
|
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName("a.b...)"));
|
||||||
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName("a.b.<special>"));
|
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName("a.b.<special>"));
|
||||||
|
Assert.assertFalse(FqNamesUtilKt.isValidJavaFqName("😀"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ fun isValidJavaFqName(qualifiedName: String?): Boolean {
|
|||||||
for (c in qualifiedName) {
|
for (c in qualifiedName) {
|
||||||
when (state) {
|
when (state) {
|
||||||
State.BEGINNING, State.AFTER_DOT -> {
|
State.BEGINNING, State.AFTER_DOT -> {
|
||||||
if (!Character.isJavaIdentifierPart(c)) return false
|
if (!Character.isJavaIdentifierStart(c)) return false
|
||||||
state = State.MIDDLE
|
state = State.MIDDLE
|
||||||
}
|
}
|
||||||
State.MIDDLE -> {
|
State.MIDDLE -> {
|
||||||
|
|||||||
Reference in New Issue
Block a user