From 8f5413be3f0c3dac9cf0f8c6041208554061fe19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=93lafur=20P=C3=A1ll=20Geirsson?= Date: Fri, 21 Apr 2023 12:21:51 +0200 Subject: [PATCH] Add more test cases for existing issues --- .../src/main/scala/minimized/Issue403.scala | 16 ++++ .../src/main/scala/minimized/Issue412.scala | 12 +++ .../src/main/scala/minimized/Issue413.scala | 9 +++ .../src/main/scala/minimized/Issue414.scala | 6 +- .../scala/minimized/Issue414Reference.scala | 6 ++ .../src/main/scala/minimized/Issue403.scala | 75 +++++++++++++++++++ .../src/main/scala/minimized/Issue412.scala | 34 +++++++++ .../src/main/scala/minimized/Issue413.scala | 34 +++++++++ .../src/main/scala/minimized/Issue414.scala | 22 ++++-- .../scala/minimized/Issue414Reference.scala | 17 +++++ 10 files changed, 222 insertions(+), 9 deletions(-) create mode 100644 tests/minimized-scala/src/main/scala/minimized/Issue403.scala create mode 100644 tests/minimized-scala/src/main/scala/minimized/Issue412.scala create mode 100644 tests/minimized-scala/src/main/scala/minimized/Issue414Reference.scala create mode 100644 tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue403.scala create mode 100644 tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue412.scala create mode 100644 tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue414Reference.scala diff --git a/tests/minimized-scala/src/main/scala/minimized/Issue403.scala b/tests/minimized-scala/src/main/scala/minimized/Issue403.scala new file mode 100644 index 00000000..8a8a0d2f --- /dev/null +++ b/tests/minimized-scala/src/main/scala/minimized/Issue403.scala @@ -0,0 +1,16 @@ +package minimized + +case class Issue403(value: String) + +object Issue403App { + def instantiations(): Unit = { + println(Issue403("a").value) + println(Issue403.apply("a").value) + println(new Issue403("a").value) + + Issue403("a") match { + case Issue403(value) => + println(value) + } + } +} diff --git a/tests/minimized-scala/src/main/scala/minimized/Issue412.scala b/tests/minimized-scala/src/main/scala/minimized/Issue412.scala new file mode 100644 index 00000000..572fecef --- /dev/null +++ b/tests/minimized-scala/src/main/scala/minimized/Issue412.scala @@ -0,0 +1,12 @@ +package minimized + +class Issue412 { + val a: Int = 5 + val b: Long = a + + def a(b: Long): Unit = { + println(b) + } + a(a) + +} diff --git a/tests/minimized-scala/src/main/scala/minimized/Issue413.scala b/tests/minimized-scala/src/main/scala/minimized/Issue413.scala index 6579cf79..f1f7dd30 100644 --- a/tests/minimized-scala/src/main/scala/minimized/Issue413.scala +++ b/tests/minimized-scala/src/main/scala/minimized/Issue413.scala @@ -2,8 +2,17 @@ package minimized trait Issue413 { val b: Int + val c: Int +} +object Issue413 { + def main(): Unit = { + val a = new Issue413Subclass() + val b: Issue413 = a + println(a.b + b.b) + } } class Issue413Subclass extends Issue413 { override val b = 10 + override val c = 10 } diff --git a/tests/minimized-scala/src/main/scala/minimized/Issue414.scala b/tests/minimized-scala/src/main/scala/minimized/Issue414.scala index e6c61705..47a5a479 100644 --- a/tests/minimized-scala/src/main/scala/minimized/Issue414.scala +++ b/tests/minimized-scala/src/main/scala/minimized/Issue414.scala @@ -4,11 +4,13 @@ object Issue414 { trait A { def b(): Unit } - val a: A = + val a1 = new A { override def b(): Unit = { print("Hello") } } - println(a.b()) + val a2: A = a1 + println(a1.b()) + println(a2.b()) } diff --git a/tests/minimized-scala/src/main/scala/minimized/Issue414Reference.scala b/tests/minimized-scala/src/main/scala/minimized/Issue414Reference.scala new file mode 100644 index 00000000..adc224d7 --- /dev/null +++ b/tests/minimized-scala/src/main/scala/minimized/Issue414Reference.scala @@ -0,0 +1,6 @@ +package minimized + +object Issue414Reference { + println(Issue414.a1.b()) + println(Issue414.a2.b()) +} diff --git a/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue403.scala b/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue403.scala new file mode 100644 index 00000000..81e4d85e --- /dev/null +++ b/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue403.scala @@ -0,0 +1,75 @@ +package minimized +// ^^^^^^^^^ definition semanticdb maven . . minimized/ + +case class Issue403(value: String) +// ^^^^^^^^ definition semanticdb maven . . minimized/Issue403# +// documentation ```scala\ncase class Issue403(value: String)\n``` +// ________ synthetic_definition semanticdb maven . . minimized/Issue403#productElementName(). +// documentation ```scala\ndef productElementName(x$1: Int): String\n``` +// relationship is_definition semanticdb maven . . minimized/Issue403# +// relationship is_reference is_implementation semanticdb maven . . scala/Product#productElementName(). +// ________ synthetic_definition semanticdb maven . . minimized/Issue403.apply(). +// documentation ```scala\ndef apply(value: String): Issue403\n``` +// relationship is_definition semanticdb maven . . minimized/Issue403# +// relationship is_reference is_implementation semanticdb maven . . scala/Function1#apply(). +// ________ synthetic_definition semanticdb maven . . minimized/Issue403. +// documentation ```scala\nobject Issue403\n``` +// relationship is_definition semanticdb maven . . minimized/Issue403# +// ________ synthetic_definition semanticdb maven . . minimized/Issue403#productElement(). +// documentation ```scala\ndef productElement(x$1: Int): Any\n``` +// relationship is_definition semanticdb maven . . minimized/Issue403# +// relationship is_reference is_implementation semanticdb maven . . scala/Product#productElement(). +// ________ synthetic_definition semanticdb maven . . minimized/Issue403#copy(). +// documentation ```scala\ndef copy(value: String): Issue403\n``` +// relationship is_definition semanticdb maven . . minimized/Issue403# +// ^ definition semanticdb maven . . minimized/Issue403#``(). +// documentation ```scala\ndef this(value: String)\n``` +// ^^^^^ definition semanticdb maven . . minimized/Issue403#value. +// documentation ```scala\nval value: String\n``` +// _____ synthetic_definition semanticdb maven . . minimized/Issue403#copy().(value) +// documentation ```scala\ndefault value: String \n``` +// relationship is_reference is_definition semanticdb maven . . minimized/Issue403#value. +// _____ synthetic_definition semanticdb maven . . minimized/Issue403.apply().(value) +// documentation ```scala\nvalue: String \n``` +// relationship is_reference is_definition semanticdb maven . . minimized/Issue403#value. +// _____ synthetic_definition semanticdb maven . . minimized/Issue403#``().(value) +// documentation ```scala\nvalue: String \n``` +// relationship is_reference is_definition semanticdb maven . . minimized/Issue403#value. +// ^^^^^^ reference semanticdb maven . . scala/Predef.String# + +object Issue403App { +// ^^^^^^^^^^^ definition semanticdb maven . . minimized/Issue403App. +// documentation ```scala\nobject Issue403App\n``` + def instantiations(): Unit = { +// ^^^^^^^^^^^^^^ definition semanticdb maven . . minimized/Issue403App.instantiations(). +// documentation ```scala\ndef instantiations(): Unit\n``` +// ^^^^ reference semanticdb maven . . scala/Unit# + println(Issue403("a").value) +// ^^^^^^^ reference semanticdb maven . . scala/Predef.println(+1). +// ^^^^^^^^ reference semanticdb maven . . minimized/Issue403. +// ^ reference semanticdb maven . . minimized/Issue403.apply(). +// ^^^^^ reference semanticdb maven . . minimized/Issue403#value. + println(Issue403.apply("a").value) +// ^^^^^^^ reference semanticdb maven . . scala/Predef.println(+1). +// ^^^^^^^^ reference semanticdb maven . . minimized/Issue403. +// ^^^^^ reference semanticdb maven . . minimized/Issue403.apply(). +// ^^^^^ reference semanticdb maven . . minimized/Issue403#value. + println(new Issue403("a").value) +// ^^^^^^^ reference semanticdb maven . . scala/Predef.println(+1). +// ^^^^^^^^ reference semanticdb maven . . minimized/Issue403# +// ^ reference semanticdb maven . . minimized/Issue403#``(). +// ^^^^^ reference semanticdb maven . . minimized/Issue403#value. + + Issue403("a") match { +// ^^^^^^^^ reference semanticdb maven . . minimized/Issue403. +// ^ reference semanticdb maven . . minimized/Issue403.apply(). + case Issue403(value) => +// ^^^^^^^^ reference semanticdb maven . . minimized/Issue403. +// ^^^^^ definition local 1 +// documentation ```scala\nvalue: String \n``` + println(value) +// ^^^^^^^ reference semanticdb maven . . scala/Predef.println(+1). +// ^^^^^ reference local 1 + } + } +} diff --git a/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue412.scala b/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue412.scala new file mode 100644 index 00000000..4106f114 --- /dev/null +++ b/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue412.scala @@ -0,0 +1,34 @@ +package minimized +// ^^^^^^^^^ definition semanticdb maven . . minimized/ + +class Issue412 { +// ^^^^^^^^ definition semanticdb maven . . minimized/Issue412# +// documentation ```scala\nclass Issue412\n``` +// ^ definition semanticdb maven . . minimized/Issue412#``(). +// documentation ```scala\ndef this()\n``` + val a: Int = 5 +// ^ definition semanticdb maven . . minimized/Issue412#a. +// documentation ```scala\nval a: Int\n``` +// ^^^ reference semanticdb maven . . scala/Int# + val b: Long = a +// ^ definition semanticdb maven . . minimized/Issue412#b. +// documentation ```scala\nval b: Long\n``` +// ^^^^ reference semanticdb maven . . scala/Long# +// ^ reference semanticdb maven . . minimized/Issue412#a. + + def a(b: Long): Unit = { +// ^ definition semanticdb maven . . minimized/Issue412#a(). +// documentation ```scala\ndef a(b: Long): Unit\n``` +// ^ definition semanticdb maven . . minimized/Issue412#a().(b) +// documentation ```scala\nb: Long \n``` +// ^^^^ reference semanticdb maven . . scala/Long# +// ^^^^ reference semanticdb maven . . scala/Unit# + println(b) +// ^^^^^^^ reference semanticdb maven . . scala/Predef.println(+1). +// ^ reference semanticdb maven . . minimized/Issue412#a().(b) + } + a(a) +//^ reference semanticdb maven . . minimized/Issue412#a(). +// ^ reference semanticdb maven . . minimized/Issue412#a. + +} diff --git a/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue413.scala b/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue413.scala index 7ed2d66a..84fca9f3 100644 --- a/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue413.scala +++ b/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue413.scala @@ -8,6 +8,36 @@ trait Issue413 { // ^ definition semanticdb maven . . minimized/Issue413#b. // documentation ```scala\nval b: Int\n``` // ^^^ reference semanticdb maven . . scala/Int# + val c: Int +// ^ definition semanticdb maven . . minimized/Issue413#c. +// documentation ```scala\nval c: Int\n``` +// ^^^ reference semanticdb maven . . scala/Int# +} +object Issue413 { +// ^^^^^^^^ definition semanticdb maven . . minimized/Issue413. +// documentation ```scala\nobject Issue413\n``` + def main(): Unit = { +// ^^^^ definition semanticdb maven . . minimized/Issue413.main(). +// documentation ```scala\ndef main(): Unit\n``` +// ^^^^ reference semanticdb maven . . scala/Unit# + val a = new Issue413Subclass() +// ^ definition local 0 +// documentation ```scala\na: Issue413Subclass \n``` +// ^^^^^^^^^^^^^^^^ reference semanticdb maven . . minimized/Issue413Subclass# +// ^ reference semanticdb maven . . minimized/Issue413Subclass#``(). + val b: Issue413 = a +// ^ definition local 1 +// documentation ```scala\nb: Issue413 \n``` +// ^^^^^^^^ reference semanticdb maven . . minimized/Issue413# +// ^ reference local 0 + println(a.b + b.b) +// ^^^^^^^ reference semanticdb maven . . scala/Predef.println(+1). +// ^ reference local 0 +// ^ reference semanticdb maven . . minimized/Issue413Subclass#b. +// ^ reference semanticdb maven . . scala/Int#`+`(+4). +// ^ reference local 1 +// ^ reference semanticdb maven . . minimized/Issue413#b. + } } class Issue413Subclass extends Issue413 { @@ -21,4 +51,8 @@ class Issue413Subclass extends Issue413 { // ^ definition semanticdb maven . . minimized/Issue413Subclass#b. // documentation ```scala\nval b: Int\n``` // relationship is_reference is_implementation semanticdb maven . . minimized/Issue413#b. + override val c = 10 +// ^ definition semanticdb maven . . minimized/Issue413Subclass#c. +// documentation ```scala\nval c: Int\n``` +// relationship is_reference is_implementation semanticdb maven . . minimized/Issue413#c. } diff --git a/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue414.scala b/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue414.scala index ce7a7b61..7b4841be 100644 --- a/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue414.scala +++ b/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue414.scala @@ -12,10 +12,9 @@ object Issue414 { // documentation ```scala\ndef b(): Unit\n``` // ^^^^ reference semanticdb maven . . scala/Unit# } - val a: A = -// ^ definition semanticdb maven . . minimized/Issue414.a. -// documentation ```scala\nval a: A\n``` -// ^ reference semanticdb maven . . minimized/Issue414.A# + val a1 = +// ^^ definition semanticdb maven . . minimized/Issue414.a1. +// documentation ```scala\nval a1: {}\n``` new A { // ^ definition local 0 // documentation ```scala\nfinal class $anon\n``` @@ -30,8 +29,17 @@ object Issue414 { // ^^^^^ reference semanticdb maven . . scala/Predef.print(). } } - println(a.b()) + val a2: A = a1 +// ^^ definition semanticdb maven . . minimized/Issue414.a2. +// documentation ```scala\nval a2: A\n``` +// ^ reference semanticdb maven . . minimized/Issue414.A# +// ^^ reference semanticdb maven . . minimized/Issue414.a1. + println(a1.b()) //^^^^^^^ reference semanticdb maven . . scala/Predef.println(+1). -// ^ reference semanticdb maven . . minimized/Issue414.a. -// ^ reference semanticdb maven . . minimized/Issue414.A#b(). +// ^^ reference semanticdb maven . . minimized/Issue414.a1. +// ^ reference semanticdb maven . . minimized/Issue414.A#b(). + println(a2.b()) +//^^^^^^^ reference semanticdb maven . . scala/Predef.println(+1). +// ^^ reference semanticdb maven . . minimized/Issue414.a2. +// ^ reference semanticdb maven . . minimized/Issue414.A#b(). } diff --git a/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue414Reference.scala b/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue414Reference.scala new file mode 100644 index 00000000..51e26f79 --- /dev/null +++ b/tests/snapshots/src/main/generated/tests/minimized-scala/src/main/scala/minimized/Issue414Reference.scala @@ -0,0 +1,17 @@ +package minimized +// ^^^^^^^^^ definition semanticdb maven . . minimized/ + +object Issue414Reference { +// ^^^^^^^^^^^^^^^^^ definition semanticdb maven . . minimized/Issue414Reference. +// documentation ```scala\nobject Issue414Reference\n``` + println(Issue414.a1.b()) +//^^^^^^^ reference semanticdb maven . . scala/Predef.println(+1). +// ^^^^^^^^ reference semanticdb maven . . minimized/Issue414. +// ^^ reference semanticdb maven . . minimized/Issue414.a1. +// ^ reference semanticdb maven . . minimized/Issue414.A#b(). + println(Issue414.a2.b()) +//^^^^^^^ reference semanticdb maven . . scala/Predef.println(+1). +// ^^^^^^^^ reference semanticdb maven . . minimized/Issue414. +// ^^ reference semanticdb maven . . minimized/Issue414.a2. +// ^ reference semanticdb maven . . minimized/Issue414.A#b(). +}