From 575c0fabb6c02e84cfb76ae8f4d025b98d43d458 Mon Sep 17 00:00:00 2001 From: Svyatoslav Scherbina Date: Wed, 8 Dec 2021 13:00:15 +0000 Subject: [PATCH] Native: add test for KT-38850 (the bug was fixed long ago, in 1.4-M1). --- .../tests/interop/objc/tests/kt38850.h | 10 ++++++++++ .../tests/interop/objc/tests/kt38850.kt | 12 ++++++++++++ .../tests/interop/objc/tests/kt38850.m | 9 +++++++++ 3 files changed, 31 insertions(+) create mode 100644 kotlin-native/backend.native/tests/interop/objc/tests/kt38850.h create mode 100644 kotlin-native/backend.native/tests/interop/objc/tests/kt38850.kt create mode 100644 kotlin-native/backend.native/tests/interop/objc/tests/kt38850.m diff --git a/kotlin-native/backend.native/tests/interop/objc/tests/kt38850.h b/kotlin-native/backend.native/tests/interop/objc/tests/kt38850.h new file mode 100644 index 00000000000..bd746cf2ccf --- /dev/null +++ b/kotlin-native/backend.native/tests/interop/objc/tests/kt38850.h @@ -0,0 +1,10 @@ +#import + +NS_ASSUME_NONNULL_BEGIN + +@interface KT38850Color : NSObject ++(instancetype)blackColor; +@property NSString* name; +@end; + +NS_ASSUME_NONNULL_END diff --git a/kotlin-native/backend.native/tests/interop/objc/tests/kt38850.kt b/kotlin-native/backend.native/tests/interop/objc/tests/kt38850.kt new file mode 100644 index 00000000000..bbfdeb809fe --- /dev/null +++ b/kotlin-native/backend.native/tests/interop/objc/tests/kt38850.kt @@ -0,0 +1,12 @@ +import kotlinx.cinterop.* +import kotlin.test.* +import objcTests.* + +enum class ColorRef(val color: KT38850Color){ + Black(KT38850Color.blackColor()), +} + +@Test +fun testKT38850() { + assertEquals("black", ColorRef.Black.color.name) +} diff --git a/kotlin-native/backend.native/tests/interop/objc/tests/kt38850.m b/kotlin-native/backend.native/tests/interop/objc/tests/kt38850.m new file mode 100644 index 00000000000..2fa2d540ba4 --- /dev/null +++ b/kotlin-native/backend.native/tests/interop/objc/tests/kt38850.m @@ -0,0 +1,9 @@ +#import "kt38850.h" + +@implementation KT38850Color ++(instancetype)blackColor { + KT38850Color* result = [KT38850Color new]; + result.name = @"black"; + return result; +} +@end;