mirror of
https://github.com/oxen-io/session-android.git
synced 2024-12-25 09:17:44 +00:00
Add 1 day after read
This commit is contained in:
parent
987bd8961b
commit
3bf87ff2ea
@ -27,6 +27,7 @@ import org.thoughtcrime.securesms.ui.GetString
|
|||||||
import kotlin.time.Duration
|
import kotlin.time.Duration
|
||||||
import kotlin.time.Duration.Companion.days
|
import kotlin.time.Duration.Companion.days
|
||||||
import kotlin.time.Duration.Companion.hours
|
import kotlin.time.Duration.Companion.hours
|
||||||
|
import kotlin.time.Duration.Companion.minutes
|
||||||
|
|
||||||
private const val THREAD_ID = 1L
|
private const val THREAD_ID = 1L
|
||||||
|
|
||||||
@ -204,9 +205,67 @@ class ExpirationSettingsViewModelTest {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun newExpirationConfiguration(time: Duration? = null) = ExpirationConfiguration(
|
@Test
|
||||||
|
fun `1-1 conversation, 1 day after read, new config`() = runTest {
|
||||||
|
val time = 1.days
|
||||||
|
val someAddress = Address.fromSerialized("05---SOME---ADDRESS")
|
||||||
|
val config = newExpirationConfiguration(time, ExpiryType.AFTER_READ)
|
||||||
|
|
||||||
|
whenever(threadDb.getRecipientForThreadId(Mockito.anyLong())).thenReturn(recipient)
|
||||||
|
whenever(storage.getExpirationConfiguration(Mockito.anyLong())).thenReturn(config)
|
||||||
|
whenever(textSecurePreferences.getLocalNumber()).thenReturn("05---LOCAL---ADDRESS")
|
||||||
|
whenever(recipient.isClosedGroupRecipient).thenReturn(false)
|
||||||
|
whenever(recipient.address).thenReturn(someAddress)
|
||||||
|
|
||||||
|
val viewModel = createViewModel()
|
||||||
|
|
||||||
|
advanceUntilIdle()
|
||||||
|
|
||||||
|
assertThat(
|
||||||
|
viewModel.state.value
|
||||||
|
).isEqualTo(
|
||||||
|
State(
|
||||||
|
isGroup = false,
|
||||||
|
isSelfAdmin = true,
|
||||||
|
address = someAddress,
|
||||||
|
isNoteToSelf = false,
|
||||||
|
expiryMode = ExpiryMode.AfterRead(1.days.inWholeSeconds),
|
||||||
|
isNewConfigEnabled = true,
|
||||||
|
persistedMode = ExpiryMode.AfterRead(1.days.inWholeSeconds),
|
||||||
|
showDebugOptions = false
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
val newTypeOption = TypeOptionCreator(time)
|
||||||
|
val newTimeOption = TimeOptionCreator(ExpiryType.AFTER_READ)
|
||||||
|
|
||||||
|
assertThat(
|
||||||
|
viewModel.uiState.value
|
||||||
|
).isEqualTo(
|
||||||
|
UiState(
|
||||||
|
showGroupFooter = false,
|
||||||
|
CardModel(
|
||||||
|
R.string.activity_expiration_settings_delete_type,
|
||||||
|
newTypeOption(ExpiryType.NONE),
|
||||||
|
typeOption(1.days, ExpiryType.AFTER_READ, selected = true),
|
||||||
|
newTypeOption(ExpiryType.AFTER_SEND)
|
||||||
|
),
|
||||||
|
CardModel(
|
||||||
|
GetString(R.string.activity_expiration_settings_timer),
|
||||||
|
newTimeOption(duration = 5.minutes),
|
||||||
|
newTimeOption(duration = 1.hours),
|
||||||
|
newTimeOption(duration = 12.hours),
|
||||||
|
newTimeOption(duration = 1.days, selected = true),
|
||||||
|
newTimeOption(duration = 7.days),
|
||||||
|
newTimeOption(duration = 14.days)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun newExpirationConfiguration(time: Duration? = null, type: ExpiryType = ExpiryType.AFTER_SEND) = ExpirationConfiguration(
|
||||||
threadId = THREAD_ID,
|
threadId = THREAD_ID,
|
||||||
expiryMode = time?.inWholeSeconds?.let(ExpiryMode::AfterSend) ?: ExpiryMode.NONE,
|
expiryMode = time?.inWholeSeconds?.let(type::mode) ?: ExpiryMode.NONE,
|
||||||
updatedTimestampMs = 0
|
updatedTimestampMs = 0
|
||||||
)
|
)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user