Skip to content

Commit

Permalink
try to get the tests to pass
Browse files Browse the repository at this point in the history
  • Loading branch information
nplasterer committed Feb 7, 2025
1 parent 5c960c4 commit 9dca8c8
Show file tree
Hide file tree
Showing 4 changed files with 33 additions and 16 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -1027,10 +1027,11 @@ class GroupTest {
@Test
fun testGroupDisappearingMessages() {
// Can enable message expiration on create
val setting = MessageDisappearingSettings(0L, 1L)
val boGroup = runBlocking {
boClient.conversations.newGroup(
listOf(alix.walletAddress),
messageDisappearingSettings = MessageDisappearingSettings(0L, 10L),
messageDisappearingSettings = setting,
)
}
val messageId = runBlocking {
Expand All @@ -1040,15 +1041,19 @@ class GroupTest {
var message = boClient.findMessage(messageId)
var alixMessage = alixClient.findMessage(messageId)
val alixGroup = alixClient.findGroup(boGroup.id)
assertEquals(
boGroup.messageDisappearingSettings()!!.disappearDurationInNs,
setting.disappearDurationInNs
)
assert(message != null)
assert(alixMessage != null)
assertEquals(runBlocking { boGroup.messages() }.size, 2)
assertEquals(runBlocking { alixGroup!!.messages() }.size, 1)
Thread.sleep(2000)
runBlocking {
boClient.conversations.syncAllConversations()
alixClient.conversations.syncAllConversations()
}
Thread.sleep(4000)
message = boClient.findMessage(messageId)
alixMessage = alixClient.findMessage(messageId)
assert(message == null)
Expand All @@ -1070,7 +1075,7 @@ class GroupTest {

assertEquals(runBlocking { boGroup.messages() }.size, 2)
assertEquals(runBlocking { alixGroup!!.messages() }.size, 2)
assertEquals(boGroup.messageDisappearingSettings, null)
assertEquals(alixGroup!!.messageDisappearingSettings, null)
assertEquals(boGroup.messageDisappearingSettings(), null)
assertEquals(alixGroup!!.messageDisappearingSettings(), null)
}
}
15 changes: 7 additions & 8 deletions library/src/main/java/org/xmtp/android/library/Conversation.kt
Original file line number Diff line number Diff line change
Expand Up @@ -37,14 +37,6 @@ sealed class Conversation {
}
}

val messageDisappearingSettings: MessageDisappearingSettings
get() {
return when (this) {
is Group -> group.messageDisappearingSettings
is Dm -> dm.messageDisappearingSettings
}
}

val createdAt: Date
get() {
return when (this) {
Expand All @@ -53,6 +45,13 @@ sealed class Conversation {
}
}

fun messageDisappearingSettings(): MessageDisappearingSettings? {
return when (this) {
is Group -> group.messageDisappearingSettings()
is Dm -> dm.messageDisappearingSettings()
}
}

suspend fun lastMessage(): Message? {
return when (this) {
is Group -> group.lastMessage()
Expand Down
10 changes: 8 additions & 2 deletions library/src/main/java/org/xmtp/android/library/Dm.kt
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,14 @@ class Dm(
val peerInboxId: String
get() = libXMTPGroup.dmPeerInboxId()

val messageDisappearingSettings: MessageDisappearingSettings
get() = MessageDisappearingSettings.createFromFfi(libXMTPGroup.conversationMessageDisappearingSettings())
fun messageDisappearingSettings(): MessageDisappearingSettings? {
val settings = libXMTPGroup.conversationMessageDisappearingSettings()
return if (settings.fromNs > 0 && settings.inNs > 0) {
MessageDisappearingSettings.createFromFfi(settings)
} else {
null
}
}

private suspend fun metadata(): FfiConversationMetadata {
return libXMTPGroup.groupMetadata()
Expand Down
11 changes: 9 additions & 2 deletions library/src/main/java/org/xmtp/android/library/Group.kt
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,15 @@ class Group(
val description: String
get() = libXMTPGroup.groupDescription()

val messageDisappearingSettings: MessageDisappearingSettings
get() = MessageDisappearingSettings.createFromFfi(libXMTPGroup.conversationMessageDisappearingSettings())
fun messageDisappearingSettings(): MessageDisappearingSettings? {
val settings = libXMTPGroup.conversationMessageDisappearingSettings()
return if (settings.fromNs <= 0 && settings.inNs <= 0) {
null
} else {
MessageDisappearingSettings.createFromFfi(settings)

}
}

suspend fun send(text: String): String {
return send(encodeContent(content = text, options = null))
Expand Down

0 comments on commit 9dca8c8

Please sign in to comment.