mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-02-24 11:45:28 +00:00
Add support for versioned expiration timers.
Co-authored-by: Greyson Parrelli <greyson@signal.org>
This commit is contained in:
committed by
Nicholas Tinsley
parent
4152294b57
commit
1f196f74ff
@@ -44,6 +44,7 @@ object RecipientDatabaseTestUtils {
|
||||
messageRingtone: Uri = Uri.EMPTY,
|
||||
callRingtone: Uri = Uri.EMPTY,
|
||||
expireMessages: Int = 0,
|
||||
expireTimerVersion: Int = 1,
|
||||
registered: RecipientTable.RegisteredState = RecipientTable.RegisteredState.REGISTERED,
|
||||
profileKey: ByteArray = Random.nextBytes(32),
|
||||
expiringProfileKeyCredential: ExpiringProfileKeyCredential? = null,
|
||||
@@ -107,6 +108,7 @@ object RecipientDatabaseTestUtils {
|
||||
messageRingtone = messageRingtone,
|
||||
callRingtone = callRingtone,
|
||||
expireMessages = expireMessages,
|
||||
expireTimerVersion = expireTimerVersion,
|
||||
registered = registered,
|
||||
profileKey = profileKey,
|
||||
expiringProfileKeyCredential = expiringProfileKeyCredential,
|
||||
@@ -124,7 +126,8 @@ object RecipientDatabaseTestUtils {
|
||||
sealedSenderAccessMode = sealedSenderAccessMode,
|
||||
capabilities = RecipientRecord.Capabilities(
|
||||
rawBits = capabilities,
|
||||
deleteSync = Recipient.Capability.deserialize(Bitmask.read(capabilities, RecipientTable.Capabilities.DELETE_SYNC, RecipientTable.Capabilities.BIT_LENGTH).toInt())
|
||||
deleteSync = Recipient.Capability.deserialize(Bitmask.read(capabilities, RecipientTable.Capabilities.DELETE_SYNC, RecipientTable.Capabilities.BIT_LENGTH).toInt()),
|
||||
versionedExpirationTimer = Recipient.Capability.deserialize(Bitmask.read(capabilities, RecipientTable.Capabilities.VERSIONED_EXPIRATION_TIMER, RecipientTable.Capabilities.BIT_LENGTH).toInt())
|
||||
),
|
||||
storageId = storageId,
|
||||
mentionSetting = mentionSetting,
|
||||
|
||||
@@ -20,6 +20,7 @@ object TestMms {
|
||||
sentTimeMillis: Long = System.currentTimeMillis(),
|
||||
receivedTimestampMillis: Long = System.currentTimeMillis(),
|
||||
expiresIn: Long = 0,
|
||||
expireTimerVersion: Int = 1,
|
||||
viewOnce: Boolean = false,
|
||||
distributionType: Int = ThreadTable.DistributionTypes.DEFAULT,
|
||||
type: Long = MessageTypes.BASE_INBOX_TYPE,
|
||||
@@ -29,23 +30,24 @@ object TestMms {
|
||||
storyType: StoryType = StoryType.NONE
|
||||
): Long {
|
||||
val message = OutgoingMessage(
|
||||
recipient,
|
||||
body,
|
||||
emptyList(),
|
||||
sentTimeMillis,
|
||||
expiresIn,
|
||||
viewOnce,
|
||||
distributionType,
|
||||
storyType,
|
||||
null,
|
||||
false,
|
||||
null,
|
||||
emptyList(),
|
||||
emptyList(),
|
||||
emptyList(),
|
||||
emptySet(),
|
||||
emptySet(),
|
||||
null
|
||||
recipient = recipient,
|
||||
body = body,
|
||||
attachments = emptyList(),
|
||||
timestamp = sentTimeMillis,
|
||||
expiresIn = expiresIn,
|
||||
expireTimerVersion = expireTimerVersion,
|
||||
viewOnce = viewOnce,
|
||||
distributionType = distributionType,
|
||||
storyType = storyType,
|
||||
parentStoryId = null,
|
||||
isStoryReaction = false,
|
||||
quote = null,
|
||||
contacts = emptyList(),
|
||||
previews = emptyList(),
|
||||
mentions = emptyList(),
|
||||
networkFailures = emptySet(),
|
||||
mismatches = emptySet(),
|
||||
giftBadge = null
|
||||
)
|
||||
|
||||
return insert(
|
||||
@@ -61,7 +63,7 @@ object TestMms {
|
||||
)
|
||||
}
|
||||
|
||||
fun insert(
|
||||
private fun insert(
|
||||
db: SQLiteDatabase,
|
||||
message: OutgoingMessage,
|
||||
recipientId: RecipientId = message.threadRecipient.id,
|
||||
@@ -81,6 +83,7 @@ object TestMms {
|
||||
put(MessageTable.DATE_RECEIVED, receivedTimestampMillis)
|
||||
put(MessageTable.SMS_SUBSCRIPTION_ID, message.subscriptionId)
|
||||
put(MessageTable.EXPIRES_IN, message.expiresIn)
|
||||
put(MessageTable.EXPIRE_TIMER_VERSION, message.expireTimerVersion)
|
||||
put(MessageTable.VIEW_ONCE, message.isViewOnce)
|
||||
put(MessageTable.FROM_RECIPIENT_ID, recipientId.serialize())
|
||||
put(MessageTable.TO_RECIPIENT_ID, recipientId.serialize())
|
||||
|
||||
Reference in New Issue
Block a user