Parcelize: Improve testing infrarstructure

- Support newer android versions
- Allow testing against Java files using android APIs
- Update test expectations
- Auto-generate ParcelBoxTests
- Create tests for the JVM IR backend
This commit is contained in:
Steven Schäfer
2020-04-01 11:19:44 +02:00
committed by Alexander Udalov
parent d62b353ab5
commit 1f97486fdd
48 changed files with 2089 additions and 156 deletions
@@ -0,0 +1,152 @@
public final class User$Creator : java/lang/Object, android/os/Parcelable$Creator {
public void <init>() {
Local variables:
0 this: LUser$Creator;
}
public final User createFromParcel(android.os.Parcel parcel) {
Local variables:
0 this: LUser$Creator;
1 parcel: Landroid/os/Parcel;
LABEL (L0)
ALOAD (1)
LDC (parcel)
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
LABEL (L1)
NEW
DUP
ALOAD (1)
INVOKEVIRTUAL (android/os/Parcel, readString, ()Ljava/lang/String;)
ALOAD (1)
INVOKEVIRTUAL (android/os/Parcel, readString, ()Ljava/lang/String;)
ALOAD (1)
INVOKEVIRTUAL (android/os/Parcel, readInt, ()I)
ALOAD (1)
INVOKEVIRTUAL (android/os/Parcel, readInt, ()I)
IFEQ (L2)
ICONST_1
GOTO (L3)
LABEL (L2)
ICONST_0
LABEL (L3)
INVOKESPECIAL (User, <init>, (Ljava/lang/String;Ljava/lang/String;IZ)V)
ARETURN
LABEL (L4)
}
public java.lang.Object createFromParcel(android.os.Parcel source) {
Local variables:
0 this: LUser$Creator;
1 source: Landroid/os/Parcel;
LABEL (L0)
ALOAD (0)
ALOAD (1)
INVOKEVIRTUAL (User$Creator, createFromParcel, (Landroid/os/Parcel;)LUser;)
ARETURN
LABEL (L1)
}
public final User[] newArray(int size) {
Local variables:
0 this: LUser$Creator;
1 size: I
}
public java.lang.Object[] newArray(int size) {
Local variables:
0 this: LUser$Creator;
1 size: I
}
}
public final class User : java/lang/Object, android/os/Parcelable {
public final static android.os.Parcelable$Creator CREATOR
private final int age
private final java.lang.String firstName
private final boolean isProUser
private final java.lang.String lastName
static void <clinit>() {
NEW
DUP
INVOKESPECIAL (User$Creator, <init>, ()V)
CHECKCAST
PUTSTATIC (CREATOR, Landroid/os/Parcelable$Creator;)
RETURN
}
public void <init>(java.lang.String firstName, java.lang.String lastName, int age, boolean isProUser) {
Local variables:
0 this: LUser;
1 firstName: Ljava/lang/String;
2 lastName: Ljava/lang/String;
3 age: I
4 isProUser: Z
}
public int describeContents() {
Local variables:
0 this: LUser;
LABEL (L0)
ICONST_0
IRETURN
LABEL (L1)
}
public final int getAge() {
Local variables:
0 this: LUser;
}
public final java.lang.String getFirstName() {
Local variables:
0 this: LUser;
}
public final java.lang.String getLastName() {
Local variables:
0 this: LUser;
}
public final boolean isProUser() {
Local variables:
0 this: LUser;
}
public void writeToParcel(android.os.Parcel out, int flags) {
Local variables:
0 this: LUser;
1 out: Landroid/os/Parcel;
2 flags: I
LABEL (L0)
ALOAD (1)
LDC (out)
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
ALOAD (1)
ALOAD (0)
GETFIELD (firstName, Ljava/lang/String;)
INVOKEVIRTUAL (android/os/Parcel, writeString, (Ljava/lang/String;)V)
ALOAD (1)
ALOAD (0)
GETFIELD (lastName, Ljava/lang/String;)
INVOKEVIRTUAL (android/os/Parcel, writeString, (Ljava/lang/String;)V)
ALOAD (1)
ALOAD (0)
GETFIELD (age, I)
INVOKEVIRTUAL (android/os/Parcel, writeInt, (I)V)
ALOAD (1)
ALOAD (0)
GETFIELD (isProUser, Z)
INVOKEVIRTUAL (android/os/Parcel, writeInt, (I)V)
RETURN
LABEL (L1)
}
}