[AA] Add additional KDoc reference resolution tests for callables

- This adds KDoc reference resolution tests for callables in nested and
  inner classes, overloaded functions, and private callables.
- Private declarations are visible in KDoc from outside their containing
  classes. This is in line with K1 KDoc behavior.

^KTIJ-22324
This commit is contained in:
Marco Pennekamp
2023-10-11 14:31:02 +02:00
committed by Space Team
parent ef484c7518
commit f04b27b90b
45 changed files with 902 additions and 0 deletions
@@ -0,0 +1,10 @@
class Foo {
inner class Inner {
fun foo() {}
}
}
/**
* [Foo.Inner.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in Foo.Inner) fun foo()
@@ -0,0 +1,10 @@
class Foo {
class Nested {
fun foo() {}
}
}
/**
* [Foo.Nested.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in Foo.Nested) fun foo()
@@ -0,0 +1,10 @@
class Foo {
private class Nested {
fun foo() {}
}
}
/**
* [Foo.Nested.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in Foo.Nested) fun foo()
@@ -0,0 +1,16 @@
// FILE: Foo.kt
package foo
class Foo {
inner class Inner {
fun foo() {}
}
}
// FILE: main.kt
package test
/**
* [foo.Foo.Inner.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in foo.Foo.Inner) fun foo()
@@ -0,0 +1,16 @@
// FILE: Foo.kt
package foo
class Foo {
class Nested {
fun foo() {}
}
}
// FILE: main.kt
package test
/**
* [foo.Foo.Nested.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in foo.Foo.Nested) fun foo()
@@ -0,0 +1,16 @@
// FILE: Foo.kt
package foo
class Foo {
private class Nested {
fun foo() {}
}
}
// FILE: main.kt
package test
/**
* [foo.Foo.Nested.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in foo.Foo.Nested) fun foo()
@@ -0,0 +1,16 @@
// FILE: Foo.kt
package foo
class Foo {
fun foo(string: String) {}
fun foo(number: Int) {}
}
// FILE: main.kt
package test
/**
* [foo.Foo.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,3 @@
Resolved to:
0: (in foo.Foo) fun foo(number: kotlin.Int)
1: (in foo.Foo) fun foo(string: kotlin.String)
@@ -0,0 +1,18 @@
// FILE: Foo.kt
package foo
class Foo {
fun foo(string: String) {}
fun foo(number: Int) {}
private fun foo(boolean: Boolean) {}
}
// FILE: main.kt
package test
/**
* [foo.Foo.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,4 @@
Resolved to:
0: (in foo.Foo) fun foo(number: kotlin.Int)
1: (in foo.Foo) fun foo(string: kotlin.String)
2: (in foo.Foo) private fun foo(boolean: kotlin.Boolean)
@@ -0,0 +1,14 @@
// FILE: Foo.kt
package foo
class Foo {
private fun foo() {}
}
// FILE: main.kt
package test
/**
* [foo.Foo.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in foo.Foo) private fun foo()
@@ -0,0 +1,14 @@
// FILE: Foo.kt
package foo
class Foo {
private val foo: Int = 5
}
// FILE: main.kt
package test
/**
* [foo.Foo.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in foo.Foo) private val foo: kotlin.Int
@@ -0,0 +1,16 @@
// FILE: Foo.kt
package foo
class Foo {
inner class Inner {
val foo: Int = 5
}
}
// FILE: main.kt
package test
/**
* [foo.Foo.Inner.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in foo.Foo.Inner) val foo: kotlin.Int
@@ -0,0 +1,16 @@
// FILE: Foo.kt
package foo
class Foo {
class Nested {
val foo: Int = 5
}
}
// FILE: main.kt
package test
/**
* [foo.Foo.Nested.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in foo.Foo.Nested) val foo: kotlin.Int
@@ -0,0 +1,16 @@
// FILE: Foo.kt
package foo
class Foo {
private class Nested {
val foo: Int = 5
}
}
// FILE: main.kt
package test
/**
* [foo.Foo.Nested.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in foo.Foo.Nested) val foo: kotlin.Int
@@ -0,0 +1,10 @@
class Foo {
fun foo(string: String) {}
fun foo(number: Int) {}
}
/**
* [Foo.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,3 @@
Resolved to:
0: (in Foo) fun foo(number: kotlin.Int)
1: (in Foo) fun foo(string: kotlin.String)
@@ -0,0 +1,12 @@
class Foo {
fun foo(string: String) {}
fun foo(number: Int) {}
private fun foo(boolean: Boolean) {}
}
/**
* [Foo.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,4 @@
Resolved to:
0: (in Foo) fun foo(number: kotlin.Int)
1: (in Foo) fun foo(string: kotlin.String)
2: (in Foo) private fun foo(boolean: kotlin.Boolean)
@@ -0,0 +1,8 @@
class Foo {
private fun foo() {}
}
/**
* [Foo.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in Foo) private fun foo()
@@ -0,0 +1,8 @@
class Foo {
private val foo: Int = 5
}
/**
* [Foo.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in Foo) private val foo: kotlin.Int
@@ -0,0 +1,10 @@
class Foo {
inner class Inner {
val foo: Int = 5
}
}
/**
* [Foo.Inner.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in Foo.Inner) val foo: kotlin.Int
@@ -0,0 +1,10 @@
class Foo {
class Nested {
val foo: Int = 5
}
}
/**
* [Foo.Nested.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in Foo.Nested) val foo: kotlin.Int
@@ -0,0 +1,10 @@
class Foo {
private class Nested {
val foo: Int = 5
}
}
/**
* [Foo.Nested.<caret>foo]
*/
fun usage() {}
@@ -0,0 +1,2 @@
Resolved to:
0: (in Foo.Nested) val foo: kotlin.Int