[PM-37810] fix: Update cancel premium confirmation dialog (#6953)

This commit is contained in:
Patrick Honkonen
2026-05-20 15:03:13 -04:00
committed by GitHub
parent 9e27b950e8
commit a9048c6393
3 changed files with 11 additions and 10 deletions

View File

@@ -211,13 +211,14 @@ private fun PlanDialogs(
is PlanState.DialogState.CancelConfirmation -> {
BitwardenTwoButtonDialog(
title = stringResource(id = BitwardenString.cancel_premium),
title = stringResource(id = BitwardenString.continue_to_stripe),
message = stringResource(
id = BitwardenString.cancel_premium_confirmation,
id = BitwardenString
.youll_be_taken_to_stripe_to_manage_your_subscription_cancellation,
dialogState.nextRenewalDate,
),
confirmButtonText = stringResource(id = BitwardenString.cancel_now),
dismissButtonText = stringResource(id = BitwardenString.close),
confirmButtonText = stringResource(id = BitwardenString.continue_text),
dismissButtonText = stringResource(id = BitwardenString.cancel),
onConfirmClick = handlers.onConfirmCancelClick,
onDismissClick = handlers.onDismissCancelConfirmation,
onDismissRequest = handlers.onDismissCancelConfirmation,

View File

@@ -1043,12 +1043,12 @@ class PlanScreenTest : BitwardenComposeTest() {
}
composeTestRule
.onAllNodesWithText("Cancel Premium")
.onAllNodesWithText("Continue to Stripe?")
.filterToOne(hasAnyAncestor(isDialog()))
.assertExists()
composeTestRule
.onAllNodesWithText(
"Youll continue to have Premium access until April 2, 2026.",
"Youll be taken to Stripe to manage your subscription cancellation.",
)
.filterToOne(hasAnyAncestor(isDialog()))
.assertExists()
@@ -1065,7 +1065,7 @@ class PlanScreenTest : BitwardenComposeTest() {
)
}
composeTestRule
.onAllNodesWithText("Cancel now")
.onAllNodesWithText("Continue")
.filterToOne(hasAnyAncestor(isDialog()))
.performClick()
verify { viewModel.trySendAction(PlanAction.ConfirmCancelClick) }
@@ -1082,7 +1082,7 @@ class PlanScreenTest : BitwardenComposeTest() {
)
}
composeTestRule
.onAllNodesWithText("Close")
.onAllNodesWithText("Cancel")
.filterToOne(hasAnyAncestor(isDialog()))
.performClick()
verify { viewModel.trySendAction(PlanAction.DismissCancelConfirmation) }

View File

@@ -1304,8 +1304,6 @@ Do you want to switch to this account?</string>
<string name="manage_plan">Manage plan</string>
<string name="manage_your_subscription_plan_in_the_bitwarden_web_app">Manage your subscription plan in the Bitwarden web app.</string>
<string name="cancel_premium">Cancel Premium</string>
<string name="cancel_now">Cancel now</string>
<string name="cancel_premium_confirmation">Youll continue to have Premium access until %1$s.</string>
<string name="subscription_status_active">Active</string>
<string name="subscription_status_canceled">Canceled</string>
<string name="subscription_status_past_due">Past due</string>
@@ -1393,4 +1391,6 @@ Do you want to switch to this account?</string>
<string name="bitwarden_needs_local_network_access_to_sync_with_your_server">Bitwarden needs local network access to sync with your server. Without this permission, the app wont be able to connect.</string>
<string name="without_this_permission_bitwarden_wont_be_able_to_sync_with_your_server">Without this permission, Bitwarden wont be able to connect and sync with your server. You can enable this in your device settings.</string>
<string name="your_request_was_interrupted_because_the_app_needs_local_network_access">Your request was interrupted because the app needs local network access. You can enable this in your device settings.</string>
<string name="continue_to_stripe">Continue to Stripe?</string>
<string name="youll_be_taken_to_stripe_to_manage_your_subscription_cancellation">Youll be taken to Stripe to manage your subscription cancellation.</string>
</resources>