From 18668539e9106d4fa8443af436e4d44783d074fb Mon Sep 17 00:00:00 2001 From: Dmitriy Dolovov Date: Fri, 28 Jul 2023 12:28:55 +0200 Subject: [PATCH] [KLIB] ABI reader: Tests for DNN & dynamic types ^KT-54402 --- .../testData/content/specific_types_dnn.kt | 3 +++ .../testData/content/specific_types_dnn.v1.txt | 7 +++++++ .../testData/content/specific_types_dnn.v2.txt | 7 +++++++ .../testData/content/specific_types_dynamic.kt | 7 +++++++ .../testData/content/specific_types_dynamic.v1.txt | 8 ++++++++ .../testData/content/specific_types_dynamic.v2.txt | 8 ++++++++ .../abi/ClassicJsLibraryAbiReaderTestGenerated.java | 12 ++++++++++++ .../abi/FirJsLibraryAbiReaderTestGenerated.java | 12 ++++++++++++ 8 files changed, 64 insertions(+) create mode 100644 compiler/util-klib-abi/testData/content/specific_types_dnn.kt create mode 100644 compiler/util-klib-abi/testData/content/specific_types_dnn.v1.txt create mode 100644 compiler/util-klib-abi/testData/content/specific_types_dnn.v2.txt create mode 100644 compiler/util-klib-abi/testData/content/specific_types_dynamic.kt create mode 100644 compiler/util-klib-abi/testData/content/specific_types_dynamic.v1.txt create mode 100644 compiler/util-klib-abi/testData/content/specific_types_dynamic.v2.txt diff --git a/compiler/util-klib-abi/testData/content/specific_types_dnn.kt b/compiler/util-klib-abi/testData/content/specific_types_dnn.kt new file mode 100644 index 00000000000..ebd54e4e487 --- /dev/null +++ b/compiler/util-klib-abi/testData/content/specific_types_dnn.kt @@ -0,0 +1,3 @@ +// MODULE: specific_types_library + +fun dnn() where A : Appendable?, B : Appendable, B : Any, C : A & Any = Unit diff --git a/compiler/util-klib-abi/testData/content/specific_types_dnn.v1.txt b/compiler/util-klib-abi/testData/content/specific_types_dnn.v1.txt new file mode 100644 index 00000000000..d67f890efd5 --- /dev/null +++ b/compiler/util-klib-abi/testData/content/specific_types_dnn.v1.txt @@ -0,0 +1,7 @@ +// Rendering settings: +// - Signature version: 1 +// - Show manifest properties: false +// - Show declarations: true + +// Library unique name: +final fun <#A: kotlin.text/Appendable?, #B: kotlin.text/Appendable & kotlin/Any, #C: #A!!> /dnn() // /dnn|1502495368240316138[0] diff --git a/compiler/util-klib-abi/testData/content/specific_types_dnn.v2.txt b/compiler/util-klib-abi/testData/content/specific_types_dnn.v2.txt new file mode 100644 index 00000000000..a01291430f9 --- /dev/null +++ b/compiler/util-klib-abi/testData/content/specific_types_dnn.v2.txt @@ -0,0 +1,7 @@ +// Rendering settings: +// - Signature version: 2 +// - Show manifest properties: false +// - Show declarations: true + +// Library unique name: +final fun <#A: kotlin.text/Appendable?, #B: kotlin.text/Appendable & kotlin/Any, #C: #A!!> /dnn() // /dnn|dnn(){0§;1§;2§<0:0>}[0] diff --git a/compiler/util-klib-abi/testData/content/specific_types_dynamic.kt b/compiler/util-klib-abi/testData/content/specific_types_dynamic.kt new file mode 100644 index 00000000000..b22d20cdc5d --- /dev/null +++ b/compiler/util-klib-abi/testData/content/specific_types_dynamic.kt @@ -0,0 +1,7 @@ +// EXCLUDED_CLASSES: /dynamic +// TARGET_BACKEND: JS_IR +// MODULE: specific_types_library + +@Suppress("ClassName") class dynamic +fun returnsDynamic(): dynamic = TODO() +fun returnsDynamicClass(): `dynamic` = TODO() diff --git a/compiler/util-klib-abi/testData/content/specific_types_dynamic.v1.txt b/compiler/util-klib-abi/testData/content/specific_types_dynamic.v1.txt new file mode 100644 index 00000000000..271e8186796 --- /dev/null +++ b/compiler/util-klib-abi/testData/content/specific_types_dynamic.v1.txt @@ -0,0 +1,8 @@ +// Rendering settings: +// - Signature version: 1 +// - Show manifest properties: false +// - Show declarations: true + +// Library unique name: +final fun /returnsDynamic(): dynamic // /returnsDynamic|820938284722403626[0] +final fun /returnsDynamicClass(): /dynamic // /returnsDynamicClass|6179391246746528953[0] diff --git a/compiler/util-klib-abi/testData/content/specific_types_dynamic.v2.txt b/compiler/util-klib-abi/testData/content/specific_types_dynamic.v2.txt new file mode 100644 index 00000000000..1e1030e8cbc --- /dev/null +++ b/compiler/util-klib-abi/testData/content/specific_types_dynamic.v2.txt @@ -0,0 +1,8 @@ +// Rendering settings: +// - Signature version: 2 +// - Show manifest properties: false +// - Show declarations: true + +// Library unique name: +final fun /returnsDynamic(): dynamic // /returnsDynamic|returnsDynamic(){}[0] +final fun /returnsDynamicClass(): /dynamic // /returnsDynamicClass|returnsDynamicClass(){}[0] diff --git a/compiler/util-klib-abi/tests-gen/org/jetbrains/kotlin/library/abi/ClassicJsLibraryAbiReaderTestGenerated.java b/compiler/util-klib-abi/tests-gen/org/jetbrains/kotlin/library/abi/ClassicJsLibraryAbiReaderTestGenerated.java index 5b2d36f2abc..dea04f7cbd1 100644 --- a/compiler/util-klib-abi/tests-gen/org/jetbrains/kotlin/library/abi/ClassicJsLibraryAbiReaderTestGenerated.java +++ b/compiler/util-klib-abi/tests-gen/org/jetbrains/kotlin/library/abi/ClassicJsLibraryAbiReaderTestGenerated.java @@ -103,6 +103,18 @@ public class ClassicJsLibraryAbiReaderTestGenerated extends AbstractClassicJsLib runTest("compiler/util-klib-abi/testData/content/root_package.kt"); } + @Test + @TestMetadata("specific_types_dnn.kt") + public void testSpecific_types_dnn() throws Exception { + runTest("compiler/util-klib-abi/testData/content/specific_types_dnn.kt"); + } + + @Test + @TestMetadata("specific_types_dynamic.kt") + public void testSpecific_types_dynamic() throws Exception { + runTest("compiler/util-klib-abi/testData/content/specific_types_dynamic.kt"); + } + @Test @TestMetadata("type_parameters.kt") public void testType_parameters() throws Exception { diff --git a/compiler/util-klib-abi/tests-gen/org/jetbrains/kotlin/library/abi/FirJsLibraryAbiReaderTestGenerated.java b/compiler/util-klib-abi/tests-gen/org/jetbrains/kotlin/library/abi/FirJsLibraryAbiReaderTestGenerated.java index 3685499f26f..d00befdc766 100644 --- a/compiler/util-klib-abi/tests-gen/org/jetbrains/kotlin/library/abi/FirJsLibraryAbiReaderTestGenerated.java +++ b/compiler/util-klib-abi/tests-gen/org/jetbrains/kotlin/library/abi/FirJsLibraryAbiReaderTestGenerated.java @@ -103,6 +103,18 @@ public class FirJsLibraryAbiReaderTestGenerated extends AbstractFirJsLibraryAbiR runTest("compiler/util-klib-abi/testData/content/root_package.kt"); } + @Test + @TestMetadata("specific_types_dnn.kt") + public void testSpecific_types_dnn() throws Exception { + runTest("compiler/util-klib-abi/testData/content/specific_types_dnn.kt"); + } + + @Test + @TestMetadata("specific_types_dynamic.kt") + public void testSpecific_types_dynamic() throws Exception { + runTest("compiler/util-klib-abi/testData/content/specific_types_dynamic.kt"); + } + @Test @TestMetadata("type_parameters.kt") public void testType_parameters() throws Exception {