diff --git a/src/main/kotlin/Main.kt b/src/main/kotlin/Main.kt index a1b0251..9cc1d6b 100644 --- a/src/main/kotlin/Main.kt +++ b/src/main/kotlin/Main.kt @@ -46,7 +46,8 @@ val ALL_TEST_CASES = listOf( ChatItemStandardMessageWithQuoteTestCase, ChatItemStickerMessageTestCase, ChatItemRemoteDeleteTestCase, - ChatItemViewOnceTestCase + ChatItemViewOnceTestCase, + ChatItemGroupChangeChatUpdateTestCase ) fun main(args: Array) { diff --git a/src/main/kotlin/Permutations.kt b/src/main/kotlin/Permutations.kt index 3535dff..7fd3ff9 100644 --- a/src/main/kotlin/Permutations.kt +++ b/src/main/kotlin/Permutations.kt @@ -179,6 +179,7 @@ class PermutationScope : Iterator>> { fun someEnum(clazz: Class, excluding: T? = null): T = excluding?.let { some(Generators.enum(clazz, excluding)) } ?: some(Generators.enum(clazz)) fun someEnum(clazz: Class, vararg excluding: T): T = some(Generators.enum(clazz, *excluding)) + inline fun someEnum(clazz: Class, excluding: List): T = some(Generators.enum(clazz, *excluding.toTypedArray())) fun someCallLinkRootKey(): ByteArray = some(Generators.callLinkRootKey()) diff --git a/src/main/kotlin/Util.kt b/src/main/kotlin/Util.kt index b4f58ed..950fdbb 100644 --- a/src/main/kotlin/Util.kt +++ b/src/main/kotlin/Util.kt @@ -1,4 +1,6 @@ import okio.ByteString +import okio.ByteString.Companion.toByteString +import org.thoughtcrime.securesms.backup.v2.proto.Frame import java.io.IOException import java.io.InputStream import java.io.OutputStream @@ -88,6 +90,12 @@ fun base64Decode(value: String): ByteArray { return Base64.getDecoder().decode(value) } +/** Synthetic value to make it easier to get ACI's off of frames that you know are Contacts with ACI's */ +val Frame.aci: ByteString + get() = this.recipient!!.contact!!.aci!! + +fun UUID.toByteString(): ByteString = this.toByteArray().toByteString() + /** * Takes a class and converts it to a nice, multi-line string with good indentation. Optimized for readability. */ diff --git a/src/main/kotlin/tests/ChatItemGroupChangeChatUpdateTestCase.kt b/src/main/kotlin/tests/ChatItemGroupChangeChatUpdateTestCase.kt new file mode 100644 index 0000000..7bdd384 --- /dev/null +++ b/src/main/kotlin/tests/ChatItemGroupChangeChatUpdateTestCase.kt @@ -0,0 +1,349 @@ +@file:Suppress("UNCHECKED_CAST") + +package tests + +import Generators +import PermutationScope +import StandardFrames +import TestCase +import aci +import asList +import nullable +import okio.ByteString.Companion.toByteString +import oneOf +import org.thoughtcrime.securesms.backup.v2.proto.* +import toByteString +import kotlin.time.Duration.Companion.days +import kotlin.time.Duration.Companion.minutes +import kotlin.time.Duration.Companion.seconds + +/** + * Reasonable permutations of [GroupChangeChatUpdate] objects. + */ +object ChatItemGroupChangeChatUpdateTestCase : TestCase("chat_item_group_change_chat_update") { + override fun PermutationScope.execute() { + frames += StandardFrames.MANDATORY_FRAMES + + frames += StandardFrames.recipientAlice + frames += StandardFrames.recipientBob + frames += StandardFrames.recipientCarol + frames += StandardFrames.recipientDan + frames += StandardFrames.recipientGroupAB + frames += StandardFrames.chatGroupAB + + val groupMembersExcludingSelfGenerator = { Generators.list(StandardFrames.recipientAlice.aci, StandardFrames.recipientBob.aci) } + val peopleNotInGroupGenerator = { Generators.list(StandardFrames.recipientCarol.aci, StandardFrames.recipientDan.aci) } + + val listOfGenerators = oneOf( + // genericGroupUpdateGenerator, + Generators.permutation { + frames += GenericGroupUpdate( + updaterAci = some(groupMembersExcludingSelfGenerator()) + ) + }, + // groupCreationUpdateGenerator, + Generators.permutation { + frames += GroupCreationUpdate( + updaterAci = some(groupMembersExcludingSelfGenerator()) + ) + }, + // groupNameUpdateGenerator, + Generators.permutation { + frames += GroupNameUpdate( + updaterAci = some(groupMembersExcludingSelfGenerator()), + newGroupName = some(Generators.titles().nullable()) + ) + }, + // groupAvatarUpdateGenerator, + Generators.permutation { + frames += GroupAvatarUpdate( + updaterAci = some(groupMembersExcludingSelfGenerator()), + wasRemoved = someBoolean() + ) + }, + // groupDescriptionUpdateGenerator, + Generators.permutation { + frames += GroupDescriptionUpdate( + updaterAci = some(groupMembersExcludingSelfGenerator()), + newDescription = some(Generators.textBody().nullable()) + ) + }, + // groupMembershipAccessLevelChangeUpdateGenerator, + Generators.permutation { + frames += GroupMembershipAccessLevelChangeUpdate( + updaterAci = some(groupMembersExcludingSelfGenerator()), + accessLevel = someEnum(GroupV2AccessLevel::class.java, excluding = listOf(GroupV2AccessLevel.UNKNOWN, GroupV2AccessLevel.UNSATISFIABLE)) + ) + }, + // groupAttributesAccessLevelChangeUpdateGenerator, + Generators.permutation { + frames += GroupAttributesAccessLevelChangeUpdate( + updaterAci = some(groupMembersExcludingSelfGenerator()), + accessLevel = someEnum(GroupV2AccessLevel::class.java, listOf(GroupV2AccessLevel.UNKNOWN, GroupV2AccessLevel.UNSATISFIABLE)) + ) + }, + // groupAnnouncementOnlyChangeUpdateGenerator, + Generators.permutation { + frames += GroupAnnouncementOnlyChangeUpdate( + updaterAci = some(groupMembersExcludingSelfGenerator()), + isAnnouncementOnly = someBoolean() + ) + }, + // groupAdminStatusUpdateGenerator, + Generators.permutation { + frames += GroupAdminStatusUpdate( + updaterAci = StandardFrames.SELF_ACI.toByteString(), + memberAci = some(groupMembersExcludingSelfGenerator()), + wasAdminStatusGranted = someBoolean() + ) + }, + // groupMemberLeftUpdateGenerator, + Generators.permutation { + frames += GroupMemberLeftUpdate( + aci = some(groupMembersExcludingSelfGenerator()) + ) + }, + // groupMemberRemovedUpdateGenerator, + Generators.permutation { + frames += GroupMemberRemovedUpdate( + removerAci = StandardFrames.SELF_ACI.toByteString(), + removedAci = some(groupMembersExcludingSelfGenerator()) + ) + }, + // selfInvitedToGroupUpdateGenerator, + Generators.permutation { + frames += SelfInvitedToGroupUpdate( + inviterAci = some(groupMembersExcludingSelfGenerator()) + ) + }, + // selfInvitedOtherUserToGroupUpdateGenerator, + Generators.permutation { + frames += SelfInvitedOtherUserToGroupUpdate( + inviteeServiceId = some(groupMembersExcludingSelfGenerator()) + ) + }, + // groupUnknownInviteeUpdateGenerator, + Generators.permutation { + frames += GroupUnknownInviteeUpdate( + inviterAci = some(groupMembersExcludingSelfGenerator()), + inviteeCount = some(Generators.ints(1, 3)) + ) + }, + // groupInvitationAcceptedUpdateGenerator, + Generators.permutation { + frames += GroupInvitationAcceptedUpdate( + inviterAci = some(groupMembersExcludingSelfGenerator()), + newMemberAci = some(peopleNotInGroupGenerator()) + ) + }, + // groupInvitationDeclinedUpdateGenerator, + Generators.permutation { + frames += GroupInvitationDeclinedUpdate( + inviterAci = some(groupMembersExcludingSelfGenerator()), + inviteeAci = some(peopleNotInGroupGenerator()) + ) + }, + // groupMemberJoinedUpdateGenerator, + Generators.permutation { + frames += GroupMemberJoinedUpdate( + newMemberAci = some(peopleNotInGroupGenerator()) + ) + }, + // groupMemberAddedUpdateGenerator, + Generators.permutation { + val inviter = some(groupMembersExcludingSelfGenerator().nullable()) + val hadOpenInvitation = someBoolean() + frames += GroupMemberAddedUpdate( + updaterAci = some(groupMembersExcludingSelfGenerator()), + newMemberAci = some(peopleNotInGroupGenerator()), + hadOpenInvitation = if (inviter != null) true else hadOpenInvitation, + inviterAci = inviter + ) + }, + // groupSelfInvitationRevokedUpdateGenerator, + Generators.permutation { + frames += GroupSelfInvitationRevokedUpdate( + revokerAci = some(groupMembersExcludingSelfGenerator()) + ) + }, + // groupInvitationRevokedUpdateGenerator, + Generators.permutation { + frames += GroupInvitationRevokedUpdate( + updaterAci = some(groupMembersExcludingSelfGenerator()) + ) + }, + // groupJoinRequestUpdateGenerator, + Generators.permutation { + frames += GroupJoinRequestUpdate( + requestorAci = some(peopleNotInGroupGenerator()) + ) + }, + // groupJoinRequestApprovalUpdateGenerator, + Generators.permutation { + frames += GroupJoinRequestApprovalUpdate( + requestorAci = some(peopleNotInGroupGenerator()), + updaterAci = some(groupMembersExcludingSelfGenerator()), + wasApproved = someBoolean() + ) + }, + // groupJoinRequestCanceledUpdateGenerator, + Generators.permutation { + frames += GroupJoinRequestCanceledUpdate( + requestorAci = some(peopleNotInGroupGenerator()) + ) + }, + // groupInviteLinkResetUpdateGenerator, + Generators.permutation { + frames += GroupInviteLinkResetUpdate( + updaterAci = some(groupMembersExcludingSelfGenerator()) + ) + }, + // groupInviteLinkEnabledUpdateGenerator, + Generators.permutation { + frames += GroupInviteLinkEnabledUpdate( + updaterAci = some(groupMembersExcludingSelfGenerator()), + linkRequiresAdminApproval = someBoolean() + ) + }, + // groupInviteLinkAdminApprovalUpdateGenerator, + Generators.permutation { + frames += GroupInviteLinkAdminApprovalUpdate( + updaterAci = some(groupMembersExcludingSelfGenerator()), + linkRequiresAdminApproval = someBoolean() + ) + }, + // groupInviteLinkDisabledUpdateGenerator, + Generators.permutation { + frames += GroupInviteLinkDisabledUpdate( + updaterAci = some(groupMembersExcludingSelfGenerator()) + ) + }, + // groupMemberJoinedByLinkUpdateGenerator, + Generators.permutation { + frames += GroupMemberJoinedByLinkUpdate( + newMemberAci = some(Generators.list(StandardFrames.recipientCarol.aci, StandardFrames.recipientDan.aci)) + ) + }, + // groupV2MigrationUpdateGenerator, + Generators.single(GroupV2MigrationUpdate()), + // groupV2MigrationSelfInvitedUpdateGenerator, + Generators.single(GroupV2MigrationSelfInvitedUpdate()), + // groupV2MigrationInvitedMembersUpdateGenerator, + Generators.permutation { + frames += GroupV2MigrationInvitedMembersUpdate( + invitedMembersCount = some(Generators.ints(1, 5)) + ) + }, + // groupV2MigrationDroppedMembersUpdateGenerator, + Generators.permutation { + frames += GroupV2MigrationDroppedMembersUpdate( + droppedMembersCount = some(Generators.ints(1, 5)) + ) + }, + // groupSequenceOfRequestsAndCancelsUpdateGenerator, + Generators.permutation { + frames += GroupSequenceOfRequestsAndCancelsUpdate( + requestorAci = some(groupMembersExcludingSelfGenerator()), + count = some(Generators.ints(1, 5)) + ) + }, + // groupExpirationTimerUpdateGenerator + Generators.permutation { + frames += GroupExpirationTimerUpdate( + updaterAci = some(groupMembersExcludingSelfGenerator()), + expiresInMs = some(Generators.longs(lower = 5.minutes.inWholeSeconds, upper = 28.days.inWholeSeconds)).seconds.inWholeMilliseconds + ) + } + ) + + val genericGroupUpdateGenerator = listOfGenerators[0] + val groupCreationUpdateGenerator = listOfGenerators[1] + val groupNameUpdateGenerator = listOfGenerators[2] + val groupAvatarUpdateGenerator = listOfGenerators[3] + val groupDescriptionUpdateGenerator = listOfGenerators[4] + val groupMembershipAccessLevelChangeUpdateGenerator = listOfGenerators[5] + val groupAttributesAccessLevelChangeUpdateGenerator = listOfGenerators[6] + val groupAnnouncementOnlyChangeUpdateGenerator = listOfGenerators[7] + val groupAdminStatusUpdateGenerator = listOfGenerators[8] + val groupMemberLeftUpdateGenerator = listOfGenerators[9] + val groupMemberRemovedUpdateGenerator = listOfGenerators[10] + val selfInvitedToGroupUpdateGenerator = listOfGenerators[11] + val selfInvitedOtherUserToGroupUpdateGenerator = listOfGenerators[12] + val groupUnknownInviteeUpdateGenerator = listOfGenerators[13] + val groupInvitationAcceptedUpdateGenerator = listOfGenerators[14] + val groupInvitationDeclinedUpdateGenerator = listOfGenerators[15] + val groupMemberJoinedUpdateGenerator = listOfGenerators[16] + val groupMemberAddedUpdateGenerator = listOfGenerators[17] + val groupSelfInvitationRevokedUpdateGenerator = listOfGenerators[18] + val groupInvitationRevokedUpdateGenerator = listOfGenerators[19] + val groupJoinRequestUpdateGenerator = listOfGenerators[20] + val groupJoinRequestApprovalUpdateGenerator = listOfGenerators[21] + val groupJoinRequestCanceledUpdateGenerator = listOfGenerators[22] + val groupInviteLinkResetUpdateGenerator = listOfGenerators[23] + val groupInviteLinkEnabledUpdateGenerator = listOfGenerators[24] + val groupInviteLinkAdminApprovalUpdateGenerator = listOfGenerators[25] + val groupInviteLinkDisabledUpdateGenerator = listOfGenerators[26] + val groupMemberJoinedByLinkUpdateGenerator = listOfGenerators[27] + val groupV2MigrationUpdateGenerator = listOfGenerators[28] + val groupV2MigrationSelfInvitedUpdateGenerator = listOfGenerators[29] + val groupV2MigrationInvitedMembersUpdateGenerator = listOfGenerators[30] + val groupV2MigrationDroppedMembersUpdateGenerator = listOfGenerators[31] + val groupSequenceOfRequestsAndCancelsUpdateGenerator = listOfGenerators[32] + val groupExpirationTimerUpdateGenerator = listOfGenerators[33] + + val clusters = mutableListOf() + clusters += List(listOfGenerators.size) { 1 } + clusters += List(listOfGenerators.size / 3) { 3 } + + frames += Frame( + chatItem = ChatItem( + chatId = StandardFrames.chatGroupAB.chat!!.id, + authorId = StandardFrames.recipientSelf.recipient!!.id, + dateSent = someNonZeroTimestamp(), + directionless = ChatItem.DirectionlessMessageDetails(), + updateMessage = ChatUpdateMessage( + groupChange = GroupChangeChatUpdate( + updates = Generators.permutation { + frames += GroupChangeChatUpdate.Update( + genericGroupUpdate = someOneOf(genericGroupUpdateGenerator), + groupCreationUpdate = someOneOf(groupCreationUpdateGenerator), + groupNameUpdate = someOneOf(groupNameUpdateGenerator), + groupAvatarUpdate = someOneOf(groupAvatarUpdateGenerator), + groupDescriptionUpdate = someOneOf(groupDescriptionUpdateGenerator), + groupMembershipAccessLevelChangeUpdate = someOneOf(groupMembershipAccessLevelChangeUpdateGenerator), + groupAttributesAccessLevelChangeUpdate = someOneOf(groupAttributesAccessLevelChangeUpdateGenerator), + groupAnnouncementOnlyChangeUpdate = someOneOf(groupAnnouncementOnlyChangeUpdateGenerator), + groupAdminStatusUpdate = someOneOf(groupAdminStatusUpdateGenerator), + groupMemberLeftUpdate = someOneOf(groupMemberLeftUpdateGenerator), + groupMemberRemovedUpdate = someOneOf(groupMemberRemovedUpdateGenerator), + selfInvitedToGroupUpdate = someOneOf(selfInvitedToGroupUpdateGenerator), + selfInvitedOtherUserToGroupUpdate = someOneOf(selfInvitedOtherUserToGroupUpdateGenerator), + groupUnknownInviteeUpdate = someOneOf(groupUnknownInviteeUpdateGenerator), + groupInvitationAcceptedUpdate = someOneOf(groupInvitationAcceptedUpdateGenerator), + groupInvitationDeclinedUpdate = someOneOf(groupInvitationDeclinedUpdateGenerator), + groupMemberJoinedUpdate = someOneOf(groupMemberJoinedUpdateGenerator), + groupMemberAddedUpdate = someOneOf(groupMemberAddedUpdateGenerator), + groupSelfInvitationRevokedUpdate = someOneOf(groupSelfInvitationRevokedUpdateGenerator), + groupInvitationRevokedUpdate = someOneOf(groupInvitationRevokedUpdateGenerator), + groupJoinRequestUpdate = someOneOf(groupJoinRequestUpdateGenerator), + groupJoinRequestApprovalUpdate = someOneOf(groupJoinRequestApprovalUpdateGenerator), + groupJoinRequestCanceledUpdate = someOneOf(groupJoinRequestCanceledUpdateGenerator), + groupInviteLinkResetUpdate = someOneOf(groupInviteLinkResetUpdateGenerator), + groupInviteLinkEnabledUpdate = someOneOf(groupInviteLinkEnabledUpdateGenerator), + groupInviteLinkAdminApprovalUpdate = someOneOf(groupInviteLinkAdminApprovalUpdateGenerator), + groupInviteLinkDisabledUpdate = someOneOf(groupInviteLinkDisabledUpdateGenerator), + groupMemberJoinedByLinkUpdate = someOneOf(groupMemberJoinedByLinkUpdateGenerator), + groupV2MigrationUpdate = someOneOf(groupV2MigrationUpdateGenerator), + groupV2MigrationSelfInvitedUpdate = someOneOf(groupV2MigrationSelfInvitedUpdateGenerator), + groupV2MigrationInvitedMembersUpdate = someOneOf(groupV2MigrationInvitedMembersUpdateGenerator), + groupV2MigrationDroppedMembersUpdate = someOneOf(groupV2MigrationDroppedMembersUpdateGenerator), + groupSequenceOfRequestsAndCancelsUpdate = someOneOf(groupSequenceOfRequestsAndCancelsUpdateGenerator), + groupExpirationTimerUpdate = someOneOf(groupExpirationTimerUpdateGenerator) + ) + }.asList(*clusters.toIntArray()).let { some(it) } + ) + ) + ) + ) + } +} diff --git a/test-cases/chat_item_group_change_chat_update_00.binproto b/test-cases/chat_item_group_change_chat_update_00.binproto new file mode 100644 index 0000000..80ec8e8 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_00.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_00.txtproto b/test-cases/chat_item_group_change_chat_update_00.txtproto new file mode 100644 index 0000000..60a4c43 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_00.txtproto @@ -0,0 +1,221 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + genericGroupUpdate = GenericGroupUpdate { + updaterAci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_01.binproto b/test-cases/chat_item_group_change_chat_update_01.binproto new file mode 100644 index 0000000..e2f546f Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_01.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_01.txtproto b/test-cases/chat_item_group_change_chat_update_01.txtproto new file mode 100644 index 0000000..a506992 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_01.txtproto @@ -0,0 +1,221 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + genericGroupUpdate = GenericGroupUpdate { + updaterAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_02.binproto b/test-cases/chat_item_group_change_chat_update_02.binproto new file mode 100644 index 0000000..724d353 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_02.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_02.txtproto b/test-cases/chat_item_group_change_chat_update_02.txtproto new file mode 100644 index 0000000..86872fe --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_02.txtproto @@ -0,0 +1,221 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupCreationUpdate = GroupCreationUpdate { + updaterAci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_03.binproto b/test-cases/chat_item_group_change_chat_update_03.binproto new file mode 100644 index 0000000..f5b456e Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_03.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_03.txtproto b/test-cases/chat_item_group_change_chat_update_03.txtproto new file mode 100644 index 0000000..3e830aa --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_03.txtproto @@ -0,0 +1,221 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupCreationUpdate = GroupCreationUpdate { + updaterAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_04.binproto b/test-cases/chat_item_group_change_chat_update_04.binproto new file mode 100644 index 0000000..b33d825 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_04.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_04.txtproto b/test-cases/chat_item_group_change_chat_update_04.txtproto new file mode 100644 index 0000000..f342983 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_04.txtproto @@ -0,0 +1,221 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupNameUpdate = GroupNameUpdate { + updaterAci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_05.binproto b/test-cases/chat_item_group_change_chat_update_05.binproto new file mode 100644 index 0000000..66bdbb6 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_05.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_05.txtproto b/test-cases/chat_item_group_change_chat_update_05.txtproto new file mode 100644 index 0000000..ff8d96d --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_05.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupNameUpdate = GroupNameUpdate { + newGroupName = "Ut Cubilia" + updaterAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_06.binproto b/test-cases/chat_item_group_change_chat_update_06.binproto new file mode 100644 index 0000000..e8bccd3 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_06.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_06.txtproto b/test-cases/chat_item_group_change_chat_update_06.txtproto new file mode 100644 index 0000000..a5cd346 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_06.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupNameUpdate = GroupNameUpdate { + newGroupName = "Congue Fastidii" + updaterAci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_07.binproto b/test-cases/chat_item_group_change_chat_update_07.binproto new file mode 100644 index 0000000..ea5ab2f Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_07.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_07.txtproto b/test-cases/chat_item_group_change_chat_update_07.txtproto new file mode 100644 index 0000000..d47ab1d --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_07.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupNameUpdate = GroupNameUpdate { + newGroupName = "Morbi Dicat" + updaterAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_08.binproto b/test-cases/chat_item_group_change_chat_update_08.binproto new file mode 100644 index 0000000..50c0390 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_08.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_08.txtproto b/test-cases/chat_item_group_change_chat_update_08.txtproto new file mode 100644 index 0000000..a46b9c8 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_08.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupAvatarUpdate = GroupAvatarUpdate { + updaterAci = <000a11ce000040008000000000000001> + wasRemoved = true + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_09.binproto b/test-cases/chat_item_group_change_chat_update_09.binproto new file mode 100644 index 0000000..f867139 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_09.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_09.txtproto b/test-cases/chat_item_group_change_chat_update_09.txtproto new file mode 100644 index 0000000..57e80aa --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_09.txtproto @@ -0,0 +1,221 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupAvatarUpdate = GroupAvatarUpdate { + updaterAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_10.binproto b/test-cases/chat_item_group_change_chat_update_10.binproto new file mode 100644 index 0000000..ba9f823 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_10.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_10.txtproto b/test-cases/chat_item_group_change_chat_update_10.txtproto new file mode 100644 index 0000000..4954dd6 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_10.txtproto @@ -0,0 +1,221 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupDescriptionUpdate = GroupDescriptionUpdate { + updaterAci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_11.binproto b/test-cases/chat_item_group_change_chat_update_11.binproto new file mode 100644 index 0000000..96bae71 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_11.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_11.txtproto b/test-cases/chat_item_group_change_chat_update_11.txtproto new file mode 100644 index 0000000..5b6abdd --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_11.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupDescriptionUpdate = GroupDescriptionUpdate { + newDescription = "convallis sale minim praesent dapibus ex dictas utamur" + updaterAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_12.binproto b/test-cases/chat_item_group_change_chat_update_12.binproto new file mode 100644 index 0000000..0ac35d5 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_12.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_12.txtproto b/test-cases/chat_item_group_change_chat_update_12.txtproto new file mode 100644 index 0000000..e4c74af --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_12.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupDescriptionUpdate = GroupDescriptionUpdate { + newDescription = "maximus recteque repudiandae" + updaterAci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_13.binproto b/test-cases/chat_item_group_change_chat_update_13.binproto new file mode 100644 index 0000000..908889f Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_13.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_13.txtproto b/test-cases/chat_item_group_change_chat_update_13.txtproto new file mode 100644 index 0000000..eb48df9 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_13.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupDescriptionUpdate = GroupDescriptionUpdate { + newDescription = "nostrum moderatius" + updaterAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_14.binproto b/test-cases/chat_item_group_change_chat_update_14.binproto new file mode 100644 index 0000000..d3ded9b Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_14.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_14.txtproto b/test-cases/chat_item_group_change_chat_update_14.txtproto new file mode 100644 index 0000000..a970fd5 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_14.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupMembershipAccessLevelChangeUpdate = GroupMembershipAccessLevelChangeUpdate { + accessLevel = GroupV2AccessLevel.ANY + updaterAci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_15.binproto b/test-cases/chat_item_group_change_chat_update_15.binproto new file mode 100644 index 0000000..6da2f58 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_15.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_15.txtproto b/test-cases/chat_item_group_change_chat_update_15.txtproto new file mode 100644 index 0000000..cbe70f5 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_15.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupMembershipAccessLevelChangeUpdate = GroupMembershipAccessLevelChangeUpdate { + accessLevel = GroupV2AccessLevel.MEMBER + updaterAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_16.binproto b/test-cases/chat_item_group_change_chat_update_16.binproto new file mode 100644 index 0000000..ee19b39 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_16.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_16.txtproto b/test-cases/chat_item_group_change_chat_update_16.txtproto new file mode 100644 index 0000000..bc99c35 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_16.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupMembershipAccessLevelChangeUpdate = GroupMembershipAccessLevelChangeUpdate { + accessLevel = GroupV2AccessLevel.ADMINISTRATOR + updaterAci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_17.binproto b/test-cases/chat_item_group_change_chat_update_17.binproto new file mode 100644 index 0000000..3a98494 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_17.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_17.txtproto b/test-cases/chat_item_group_change_chat_update_17.txtproto new file mode 100644 index 0000000..57f512a --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_17.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupAttributesAccessLevelChangeUpdate = GroupAttributesAccessLevelChangeUpdate { + accessLevel = GroupV2AccessLevel.ANY + updaterAci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_18.binproto b/test-cases/chat_item_group_change_chat_update_18.binproto new file mode 100644 index 0000000..4f37a1f Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_18.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_18.txtproto b/test-cases/chat_item_group_change_chat_update_18.txtproto new file mode 100644 index 0000000..8d1e2cf --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_18.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupAttributesAccessLevelChangeUpdate = GroupAttributesAccessLevelChangeUpdate { + accessLevel = GroupV2AccessLevel.MEMBER + updaterAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_19.binproto b/test-cases/chat_item_group_change_chat_update_19.binproto new file mode 100644 index 0000000..9754cd8 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_19.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_19.txtproto b/test-cases/chat_item_group_change_chat_update_19.txtproto new file mode 100644 index 0000000..241ad41 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_19.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupAttributesAccessLevelChangeUpdate = GroupAttributesAccessLevelChangeUpdate { + accessLevel = GroupV2AccessLevel.ADMINISTRATOR + updaterAci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_20.binproto b/test-cases/chat_item_group_change_chat_update_20.binproto new file mode 100644 index 0000000..018c98d Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_20.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_20.txtproto b/test-cases/chat_item_group_change_chat_update_20.txtproto new file mode 100644 index 0000000..a5eaf5e --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_20.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupAnnouncementOnlyChangeUpdate = GroupAnnouncementOnlyChangeUpdate { + isAnnouncementOnly = true + updaterAci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_21.binproto b/test-cases/chat_item_group_change_chat_update_21.binproto new file mode 100644 index 0000000..5a95627 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_21.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_21.txtproto b/test-cases/chat_item_group_change_chat_update_21.txtproto new file mode 100644 index 0000000..85c71dc --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_21.txtproto @@ -0,0 +1,221 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupAnnouncementOnlyChangeUpdate = GroupAnnouncementOnlyChangeUpdate { + updaterAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_22.binproto b/test-cases/chat_item_group_change_chat_update_22.binproto new file mode 100644 index 0000000..1e2a71c Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_22.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_22.txtproto b/test-cases/chat_item_group_change_chat_update_22.txtproto new file mode 100644 index 0000000..a6b5714 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_22.txtproto @@ -0,0 +1,223 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupAdminStatusUpdate = GroupAdminStatusUpdate { + memberAci = <000a11ce000040008000000000000001> + updaterAci = <00000000000040008000000000000001> + wasAdminStatusGranted = true + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_23.binproto b/test-cases/chat_item_group_change_chat_update_23.binproto new file mode 100644 index 0000000..c3cf8bd Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_23.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_23.txtproto b/test-cases/chat_item_group_change_chat_update_23.txtproto new file mode 100644 index 0000000..1154289 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_23.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupAdminStatusUpdate = GroupAdminStatusUpdate { + memberAci = <00000b0b000040008000000000000001> + updaterAci = <00000000000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_24.binproto b/test-cases/chat_item_group_change_chat_update_24.binproto new file mode 100644 index 0000000..f2faf4e Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_24.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_24.txtproto b/test-cases/chat_item_group_change_chat_update_24.txtproto new file mode 100644 index 0000000..a005efb --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_24.txtproto @@ -0,0 +1,221 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupMemberLeftUpdate = GroupMemberLeftUpdate { + aci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_25.binproto b/test-cases/chat_item_group_change_chat_update_25.binproto new file mode 100644 index 0000000..1c77bee Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_25.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_25.txtproto b/test-cases/chat_item_group_change_chat_update_25.txtproto new file mode 100644 index 0000000..26c6852 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_25.txtproto @@ -0,0 +1,221 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupMemberLeftUpdate = GroupMemberLeftUpdate { + aci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_26.binproto b/test-cases/chat_item_group_change_chat_update_26.binproto new file mode 100644 index 0000000..7cf9ec2 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_26.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_26.txtproto b/test-cases/chat_item_group_change_chat_update_26.txtproto new file mode 100644 index 0000000..5916234 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_26.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupMemberRemovedUpdate = GroupMemberRemovedUpdate { + removedAci = <000a11ce000040008000000000000001> + removerAci = <00000000000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_27.binproto b/test-cases/chat_item_group_change_chat_update_27.binproto new file mode 100644 index 0000000..a3b1fe8 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_27.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_27.txtproto b/test-cases/chat_item_group_change_chat_update_27.txtproto new file mode 100644 index 0000000..6905568 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_27.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupMemberRemovedUpdate = GroupMemberRemovedUpdate { + removedAci = <00000b0b000040008000000000000001> + removerAci = <00000000000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_28.binproto b/test-cases/chat_item_group_change_chat_update_28.binproto new file mode 100644 index 0000000..06dd4f1 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_28.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_28.txtproto b/test-cases/chat_item_group_change_chat_update_28.txtproto new file mode 100644 index 0000000..3839639 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_28.txtproto @@ -0,0 +1,221 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + selfInvitedToGroupUpdate = SelfInvitedToGroupUpdate { + inviterAci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_29.binproto b/test-cases/chat_item_group_change_chat_update_29.binproto new file mode 100644 index 0000000..4fe3876 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_29.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_29.txtproto b/test-cases/chat_item_group_change_chat_update_29.txtproto new file mode 100644 index 0000000..4969d9b --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_29.txtproto @@ -0,0 +1,221 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + selfInvitedToGroupUpdate = SelfInvitedToGroupUpdate { + inviterAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_30.binproto b/test-cases/chat_item_group_change_chat_update_30.binproto new file mode 100644 index 0000000..f0726b8 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_30.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_30.txtproto b/test-cases/chat_item_group_change_chat_update_30.txtproto new file mode 100644 index 0000000..ff92111 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_30.txtproto @@ -0,0 +1,221 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + selfInvitedOtherUserToGroupUpdate = SelfInvitedOtherUserToGroupUpdate { + inviteeServiceId = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_31.binproto b/test-cases/chat_item_group_change_chat_update_31.binproto new file mode 100644 index 0000000..49bb416 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_31.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_31.txtproto b/test-cases/chat_item_group_change_chat_update_31.txtproto new file mode 100644 index 0000000..51600b2 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_31.txtproto @@ -0,0 +1,221 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + selfInvitedOtherUserToGroupUpdate = SelfInvitedOtherUserToGroupUpdate { + inviteeServiceId = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_32.binproto b/test-cases/chat_item_group_change_chat_update_32.binproto new file mode 100644 index 0000000..0289319 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_32.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_32.txtproto b/test-cases/chat_item_group_change_chat_update_32.txtproto new file mode 100644 index 0000000..1dc7243 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_32.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupUnknownInviteeUpdate = GroupUnknownInviteeUpdate { + inviteeCount = 2 + inviterAci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_33.binproto b/test-cases/chat_item_group_change_chat_update_33.binproto new file mode 100644 index 0000000..ac7aaf2 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_33.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_33.txtproto b/test-cases/chat_item_group_change_chat_update_33.txtproto new file mode 100644 index 0000000..cbc5283 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_33.txtproto @@ -0,0 +1,222 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupUnknownInviteeUpdate = GroupUnknownInviteeUpdate { + inviteeCount = 1 + inviterAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_34.binproto b/test-cases/chat_item_group_change_chat_update_34.binproto new file mode 100644 index 0000000..22f0c11 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_34.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_34.txtproto b/test-cases/chat_item_group_change_chat_update_34.txtproto new file mode 100644 index 0000000..bd2be69 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_34.txtproto @@ -0,0 +1,234 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupUnknownInviteeUpdate = GroupUnknownInviteeUpdate { + inviteeCount = 2 + inviterAci = <000a11ce000040008000000000000001> + } + }, + Update { + groupInvitationAcceptedUpdate = GroupInvitationAcceptedUpdate { + inviterAci = <000a11ce000040008000000000000001> + newMemberAci = <0000ca01000040008000000000000001> + } + }, + Update { + groupInvitationAcceptedUpdate = GroupInvitationAcceptedUpdate { + inviterAci = <00000b0b000040008000000000000001> + newMemberAci = <000000da000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_35.binproto b/test-cases/chat_item_group_change_chat_update_35.binproto new file mode 100644 index 0000000..e6c3fc3 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_35.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_35.txtproto b/test-cases/chat_item_group_change_chat_update_35.txtproto new file mode 100644 index 0000000..f4984d8 --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_35.txtproto @@ -0,0 +1,233 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupInvitationDeclinedUpdate = GroupInvitationDeclinedUpdate { + inviteeAci = <0000ca01000040008000000000000001> + inviterAci = <000a11ce000040008000000000000001> + } + }, + Update { + groupInvitationDeclinedUpdate = GroupInvitationDeclinedUpdate { + inviteeAci = <000000da000040008000000000000001> + inviterAci = <00000b0b000040008000000000000001> + } + }, + Update { + groupMemberJoinedUpdate = GroupMemberJoinedUpdate { + newMemberAci = <0000ca01000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_36.binproto b/test-cases/chat_item_group_change_chat_update_36.binproto new file mode 100644 index 0000000..b2b1c7d Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_36.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_36.txtproto b/test-cases/chat_item_group_change_chat_update_36.txtproto new file mode 100644 index 0000000..cc5092f --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_36.txtproto @@ -0,0 +1,236 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupMemberJoinedUpdate = GroupMemberJoinedUpdate { + newMemberAci = <000000da000040008000000000000001> + } + }, + Update { + groupMemberAddedUpdate = GroupMemberAddedUpdate { + hadOpenInvitation = true + newMemberAci = <0000ca01000040008000000000000001> + updaterAci = <000a11ce000040008000000000000001> + } + }, + Update { + groupMemberAddedUpdate = GroupMemberAddedUpdate { + hadOpenInvitation = true + inviterAci = <000a11ce000040008000000000000001> + newMemberAci = <000000da000040008000000000000001> + updaterAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_37.binproto b/test-cases/chat_item_group_change_chat_update_37.binproto new file mode 100644 index 0000000..8df4533 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_37.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_37.txtproto b/test-cases/chat_item_group_change_chat_update_37.txtproto new file mode 100644 index 0000000..284d0af --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_37.txtproto @@ -0,0 +1,234 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupMemberAddedUpdate = GroupMemberAddedUpdate { + hadOpenInvitation = true + inviterAci = <00000b0b000040008000000000000001> + newMemberAci = <0000ca01000040008000000000000001> + updaterAci = <000a11ce000040008000000000000001> + } + }, + Update { + groupSelfInvitationRevokedUpdate = GroupSelfInvitationRevokedUpdate { + revokerAci = <000a11ce000040008000000000000001> + } + }, + Update { + groupSelfInvitationRevokedUpdate = GroupSelfInvitationRevokedUpdate { + revokerAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_38.binproto b/test-cases/chat_item_group_change_chat_update_38.binproto new file mode 100644 index 0000000..4a4b2f1 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_38.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_38.txtproto b/test-cases/chat_item_group_change_chat_update_38.txtproto new file mode 100644 index 0000000..6782ddf --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_38.txtproto @@ -0,0 +1,231 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupInvitationRevokedUpdate = GroupInvitationRevokedUpdate { + updaterAci = <000a11ce000040008000000000000001> + } + }, + Update { + groupInvitationRevokedUpdate = GroupInvitationRevokedUpdate { + updaterAci = <00000b0b000040008000000000000001> + } + }, + Update { + groupJoinRequestUpdate = GroupJoinRequestUpdate { + requestorAci = <0000ca01000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_39.binproto b/test-cases/chat_item_group_change_chat_update_39.binproto new file mode 100644 index 0000000..ca051b4 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_39.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_39.txtproto b/test-cases/chat_item_group_change_chat_update_39.txtproto new file mode 100644 index 0000000..7ea4e1c --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_39.txtproto @@ -0,0 +1,234 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupJoinRequestUpdate = GroupJoinRequestUpdate { + requestorAci = <000000da000040008000000000000001> + } + }, + Update { + groupJoinRequestApprovalUpdate = GroupJoinRequestApprovalUpdate { + requestorAci = <0000ca01000040008000000000000001> + updaterAci = <000a11ce000040008000000000000001> + wasApproved = true + } + }, + Update { + groupJoinRequestApprovalUpdate = GroupJoinRequestApprovalUpdate { + requestorAci = <000000da000040008000000000000001> + updaterAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_40.binproto b/test-cases/chat_item_group_change_chat_update_40.binproto new file mode 100644 index 0000000..37a01d2 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_40.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_40.txtproto b/test-cases/chat_item_group_change_chat_update_40.txtproto new file mode 100644 index 0000000..d4be7bb --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_40.txtproto @@ -0,0 +1,231 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupJoinRequestCanceledUpdate = GroupJoinRequestCanceledUpdate { + requestorAci = <0000ca01000040008000000000000001> + } + }, + Update { + groupJoinRequestCanceledUpdate = GroupJoinRequestCanceledUpdate { + requestorAci = <000000da000040008000000000000001> + } + }, + Update { + groupInviteLinkResetUpdate = GroupInviteLinkResetUpdate { + updaterAci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_41.binproto b/test-cases/chat_item_group_change_chat_update_41.binproto new file mode 100644 index 0000000..09a6dde Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_41.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_41.txtproto b/test-cases/chat_item_group_change_chat_update_41.txtproto new file mode 100644 index 0000000..1eb55df --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_41.txtproto @@ -0,0 +1,232 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupInviteLinkResetUpdate = GroupInviteLinkResetUpdate { + updaterAci = <00000b0b000040008000000000000001> + } + }, + Update { + groupInviteLinkEnabledUpdate = GroupInviteLinkEnabledUpdate { + linkRequiresAdminApproval = true + updaterAci = <000a11ce000040008000000000000001> + } + }, + Update { + groupInviteLinkEnabledUpdate = GroupInviteLinkEnabledUpdate { + updaterAci = <00000b0b000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_42.binproto b/test-cases/chat_item_group_change_chat_update_42.binproto new file mode 100644 index 0000000..e67c43c Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_42.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_42.txtproto b/test-cases/chat_item_group_change_chat_update_42.txtproto new file mode 100644 index 0000000..45fef0f --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_42.txtproto @@ -0,0 +1,232 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupInviteLinkAdminApprovalUpdate = GroupInviteLinkAdminApprovalUpdate { + linkRequiresAdminApproval = true + updaterAci = <000a11ce000040008000000000000001> + } + }, + Update { + groupInviteLinkAdminApprovalUpdate = GroupInviteLinkAdminApprovalUpdate { + updaterAci = <00000b0b000040008000000000000001> + } + }, + Update { + groupInviteLinkDisabledUpdate = GroupInviteLinkDisabledUpdate { + updaterAci = <000a11ce000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_43.binproto b/test-cases/chat_item_group_change_chat_update_43.binproto new file mode 100644 index 0000000..9c2eccc Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_43.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_43.txtproto b/test-cases/chat_item_group_change_chat_update_43.txtproto new file mode 100644 index 0000000..003093d --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_43.txtproto @@ -0,0 +1,231 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1820168225219 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupInviteLinkDisabledUpdate = GroupInviteLinkDisabledUpdate { + updaterAci = <00000b0b000040008000000000000001> + } + }, + Update { + groupMemberJoinedByLinkUpdate = GroupMemberJoinedByLinkUpdate { + newMemberAci = <0000ca01000040008000000000000001> + } + }, + Update { + groupMemberJoinedByLinkUpdate = GroupMemberJoinedByLinkUpdate { + newMemberAci = <000000da000040008000000000000001> + } + } + ] + } + } + } +} \ No newline at end of file diff --git a/test-cases/chat_item_group_change_chat_update_44.binproto b/test-cases/chat_item_group_change_chat_update_44.binproto new file mode 100644 index 0000000..9776712 Binary files /dev/null and b/test-cases/chat_item_group_change_chat_update_44.binproto differ diff --git a/test-cases/chat_item_group_change_chat_update_44.txtproto b/test-cases/chat_item_group_change_chat_update_44.txtproto new file mode 100644 index 0000000..4c30b1f --- /dev/null +++ b/test-cases/chat_item_group_change_chat_update_44.txtproto @@ -0,0 +1,227 @@ +// This file was auto-generated! It's only meant to show you what's in the .binproto. Do not edit! + +BackupInfo { + backupTimeMs = 1715636551000 + mediaRootBackupKey = <8fba3ce1946b78a4ca0d9229ddb050a12702072309d6574ae12451269e5fdbb2> + version = 1 +} + +Frame { + account = AccountData { + accountSettings = AccountSettings { + customChatColors = [ + CustomChatColor { + id = 1 + solid = -16777216 + }, + CustomChatColor { + id = 2 + solid = -65536 + }, + CustomChatColor { + id = 3 + solid = -16711936 + } + ] + displayBadgesOnProfile = true + hasCompletedUsernameOnboarding = true + hasSeenGroupStoryEducationSheet = true + hasSetMyStoriesPrivacy = true + hasViewedOnboardingStory = true + keepMutedChatsArchived = true + linkPreviews = true + notDiscoverableByPhoneNumber = true + phoneNumberSharingMode = PhoneNumberSharingMode.NOBODY + preferContactAvatars = true + preferredReactionEmoji = [ + "a", + "b", + "c" + ] + readReceipts = true + sealedSenderIndicators = true + storiesDisabled = true + storyViewReceiptsEnabled = true + typingIndicators = true + universalExpireTimerSeconds = 3600 + } + avatarUrlPath = "" + donationSubscriberData = SubscriberData { + currencyCode = "USD" + manuallyCancelled = true + subscriberId = + } + familyName = "Fett" + givenName = "Boba" + profileKey = <610291abedc34249489da39a31c9a5cd99cdd26ff58732e268e357ee0075d9d8> + username = "boba_fett.66" + usernameLink = UsernameLink { + color = Color.OLIVE + entropy = <65675c73d00eb01005e3bb7c4a47f296cb6554f78981238815e915d824fd2e93> + serverId = <61c101a200d5421789c20518d8497af0> + } + } +} + +Frame { + recipient = Recipient { + id = 1 + self = Self {} + } +} + +Frame { + recipient = Recipient { + id = 2 + releaseNotes = ReleaseNotes {} + } +} + +Frame { + recipient = Recipient { + distributionList = DistributionListItem { + distributionId = <00000000000000000000000000000000> + distributionList = DistributionList { + name = "" + privacyMode = PrivacyMode.ALL + } + } + id = 3 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000a11ce000040008000000000000001> + e164 = 16105550101 + pni = <000a11ce000040008000000000000002> + profileFamilyName = "Smith" + profileGivenName = "Alice" + profileKey = + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 4 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <00000b0b000040008000000000000001> + e164 = 16105550102 + pni = <00000b0b000040008000000000000002> + profileFamilyName = "Jones" + profileGivenName = "Bob" + profileKey = <0410410410410410410410410410410410410410410410410410410410410410> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 5 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <0000ca01000040008000000000000001> + e164 = 16105550103 + pni = <0000ca01000040008000000000000002> + profileFamilyName = "Johnson" + profileGivenName = "Carol" + profileKey = <0820820820820820820820820820820820820820820820820820820820820820> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 6 + } +} + +Frame { + recipient = Recipient { + contact = Contact { + aci = <000000da000040008000000000000001> + e164 = 16105550104 + pni = <000000da000040008000000000000002> + profileFamilyName = "Brown" + profileGivenName = "Dan" + profileKey = <0c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30c30> + registered = Registered {} + visibility = Visibility.VISIBLE + } + id = 7 + } +} + +Frame { + recipient = Recipient { + group = Group { + masterKey = <0000000000000000000000000000000000000000000000000000000000000000> + snapshot = GroupSnapshot { + accessControl = AccessControl { + addFromInviteLink = AccessRequired.UNSATISFIABLE + attributes = AccessRequired.MEMBER + members = AccessRequired.MEMBER + } + avatarUrl = "https://example.com/avatar.jpg" + inviteLinkPassword = <> + members = [ + Member { + role = Role.ADMINISTRATOR + userId = <00000000000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <000a11ce000040008000000000000001> + }, + Member { + role = Role.DEFAULT + userId = <00000b0b000040008000000000000001> + } + ] + title = GroupAttributeBlob { + title = "Me, Alice, Bob" + } + version = 1 + } + storySendMode = StorySendMode.DEFAULT + whitelisted = true + } + id = 10 + } +} + +Frame { + chat = Chat { + expireTimerVersion = 1 + id = 3 + recipientId = 10 + } +} + +Frame { + chatItem = ChatItem { + authorId = 1 + chatId = 3 + dateSent = 1878937499399 + directionless = DirectionlessMessageDetails {} + updateMessage = ChatUpdateMessage { + groupChange = GroupChangeChatUpdate { + updates = [ + Update { + groupV2MigrationUpdate = GroupV2MigrationUpdate {} + }, + Update { + groupV2MigrationSelfInvitedUpdate = GroupV2MigrationSelfInvitedUpdate {} + }, + Update { + groupV2MigrationInvitedMembersUpdate = GroupV2MigrationInvitedMembersUpdate { + invitedMembersCount = 2 + } + } + ] + } + } + } +} \ No newline at end of file