diff --git a/plugins/parcelize/parcelize-compiler/testData/box/overriddenDescribeContents.kt b/plugins/parcelize/parcelize-compiler/testData/box/overriddenDescribeContents.kt new file mode 100644 index 00000000000..a62b2478f21 --- /dev/null +++ b/plugins/parcelize/parcelize-compiler/testData/box/overriddenDescribeContents.kt @@ -0,0 +1,26 @@ +// WITH_STDLIB + +@file:JvmName("TestKt") +package test + +import kotlinx.parcelize.* +import android.os.Parcel +import android.os.Parcelable + +annotation class SerializableLike + +@Parcelize @SerializableLike +data class User(val firstName: String, val secondName: String, val age: Int) : Parcelable { + override fun describeContents(): Int = 1 +} + +fun box() = parcelTest { parcel -> + val user = User("John", "Smith", 20) + user.writeToParcel(parcel, 0) + + val bytes = parcel.marshall() + parcel.unmarshall(bytes, 0, bytes.size) + parcel.setDataPosition(0) + val user2 = parcelableCreator().createFromParcel(parcel) + assert(user == user2) +} diff --git a/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/FirParcelizeDiagnosticTestGenerated.java b/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/FirParcelizeDiagnosticTestGenerated.java index 0ea58af1c3f..d27a1e6cd86 100644 --- a/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/FirParcelizeDiagnosticTestGenerated.java +++ b/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/FirParcelizeDiagnosticTestGenerated.java @@ -6,8 +6,9 @@ package org.jetbrains.kotlin.parcelize.test.runners; import com.intellij.testFramework.TestDataPath; -import org.jetbrains.kotlin.test.TestMetadata; import org.jetbrains.kotlin.test.util.KtTestUtil; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; import java.io.File; diff --git a/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeBoxTestGenerated.java b/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeBoxTestGenerated.java index 3c8220ebd12..4d15cfe9170 100644 --- a/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeBoxTestGenerated.java +++ b/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeBoxTestGenerated.java @@ -367,6 +367,12 @@ public class ParcelizeBoxTestGenerated extends AbstractParcelizeBoxTest { runTest("plugins/parcelize/parcelize-compiler/testData/box/openParcelize.kt"); } + @Test + @TestMetadata("overriddenDescribeContents.kt") + public void testOverriddenDescribeContents() throws Exception { + runTest("plugins/parcelize/parcelize-compiler/testData/box/overriddenDescribeContents.kt"); + } + @Test @TestMetadata("parcelableValueClass.kt") public void testParcelableValueClass() throws Exception { diff --git a/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeDiagnosticTestGenerated.java b/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeDiagnosticTestGenerated.java index 75ca91c4beb..aa5de810efc 100644 --- a/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeDiagnosticTestGenerated.java +++ b/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeDiagnosticTestGenerated.java @@ -6,8 +6,9 @@ package org.jetbrains.kotlin.parcelize.test.runners; import com.intellij.testFramework.TestDataPath; -import org.jetbrains.kotlin.test.TestMetadata; import org.jetbrains.kotlin.test.util.KtTestUtil; +import org.jetbrains.kotlin.test.TestMetadata; +import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; import java.io.File; diff --git a/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeFirBoxTestGenerated.java b/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeFirBoxTestGenerated.java index 1a316416127..65fc1f209f6 100644 --- a/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeFirBoxTestGenerated.java +++ b/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeFirBoxTestGenerated.java @@ -367,6 +367,12 @@ public class ParcelizeFirBoxTestGenerated extends AbstractParcelizeFirBoxTest { runTest("plugins/parcelize/parcelize-compiler/testData/box/openParcelize.kt"); } + @Test + @TestMetadata("overriddenDescribeContents.kt") + public void testOverriddenDescribeContents() throws Exception { + runTest("plugins/parcelize/parcelize-compiler/testData/box/overriddenDescribeContents.kt"); + } + @Test @TestMetadata("parcelableValueClass.kt") public void testParcelableValueClass() throws Exception { diff --git a/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeIrBoxTestGenerated.java b/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeIrBoxTestGenerated.java index 42752a03a69..8dcbfeed86d 100644 --- a/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeIrBoxTestGenerated.java +++ b/plugins/parcelize/parcelize-compiler/tests-gen/org/jetbrains/kotlin/parcelize/test/runners/ParcelizeIrBoxTestGenerated.java @@ -367,6 +367,12 @@ public class ParcelizeIrBoxTestGenerated extends AbstractParcelizeIrBoxTest { runTest("plugins/parcelize/parcelize-compiler/testData/box/openParcelize.kt"); } + @Test + @TestMetadata("overriddenDescribeContents.kt") + public void testOverriddenDescribeContents() throws Exception { + runTest("plugins/parcelize/parcelize-compiler/testData/box/overriddenDescribeContents.kt"); + } + @Test @TestMetadata("parcelableValueClass.kt") public void testParcelableValueClass() throws Exception {