diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/tools/feature/send/addsend/util/AddSendStateExtensions.kt b/app/src/main/java/com/x8bit/bitwarden/ui/tools/feature/send/addsend/util/AddSendStateExtensions.kt index f562cd66f6..b990e0d78e 100644 --- a/app/src/main/java/com/x8bit/bitwarden/ui/tools/feature/send/addsend/util/AddSendStateExtensions.kt +++ b/app/src/main/java/com/x8bit/bitwarden/ui/tools/feature/send/addsend/util/AddSendStateExtensions.kt @@ -31,7 +31,11 @@ fun AddSendState.ViewState.Content.toSendView( hideEmail = common.isHideEmailChecked, revisionDate = clock.instant(), deletionDate = common.deletionDate.toInstant(), - expirationDate = common.expirationDate?.toInstant(), + expirationDate = common.expirationDate?.let { + // We no longer support expiration dates but is a send has one already, + // we just update it to match the deletion date. + common.deletionDate.toInstant() + }, ) private fun AddSendState.ViewState.Content.SendType.toSendType(): SendType = diff --git a/app/src/test/java/com/x8bit/bitwarden/ui/tools/feature/send/addsend/util/AddSendStateExtensionsTest.kt b/app/src/test/java/com/x8bit/bitwarden/ui/tools/feature/send/addsend/util/AddSendStateExtensionsTest.kt index 4f3bed88b8..77a52958af 100644 --- a/app/src/test/java/com/x8bit/bitwarden/ui/tools/feature/send/addsend/util/AddSendStateExtensionsTest.kt +++ b/app/src/test/java/com/x8bit/bitwarden/ui/tools/feature/send/addsend/util/AddSendStateExtensionsTest.kt @@ -58,6 +58,31 @@ class AddSendStateExtensionsTest { assertEquals(sendView, result) } + + @Suppress("MaxLineLength") + @Test + fun `toSendView should create an appropriate SendView with expiration date set to deletion date`() { + val sendView = createMockSendView(number = 1, type = SendType.TEXT).copy( + id = null, + accessId = null, + key = null, + accessCount = 0U, + hasPassword = false, + deletionDate = ZonedDateTime.parse("2030-10-27T12:00:00Z").toInstant(), + expirationDate = ZonedDateTime.parse("2030-10-27T12:00:00Z").toInstant(), + ) + + val result = DEFAULT_VIEW_STATE + .copy( + common = DEFAULT_COMMON_STATE.copy( + deletionDate = ZonedDateTime.parse("2030-10-27T12:00:00Z"), + expirationDate = ZonedDateTime.parse("2026-10-27T12:00:00Z"), + ), + ) + .toSendView(FIXED_CLOCK) + + assertEquals(sendView, result) + } } private val FIXED_CLOCK: Clock = Clock.fixed(