diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/paypal/PayPalConfirmationResult.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/paypal/PayPalConfirmationResult.kt index 4c0711e2d4..35a3619654 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/paypal/PayPalConfirmationResult.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/paypal/PayPalConfirmationResult.kt @@ -7,19 +7,18 @@ import kotlinx.parcelize.Parcelize @Parcelize data class PayPalConfirmationResult( val payerId: String, - val paymentId: String, + val paymentId: String?, val paymentToken: String ) : Parcelable { companion object { private const val KEY_PAYER_ID = "PayerID" - private const val KEY_PAYMENT_ID = "paymentId" private const val KEY_PAYMENT_TOKEN = "token" fun fromUrl(url: String): PayPalConfirmationResult? { val uri = Uri.parse(url) return PayPalConfirmationResult( payerId = uri.getQueryParameter(KEY_PAYER_ID) ?: return null, - paymentId = uri.getQueryParameter(KEY_PAYMENT_ID) ?: return null, + paymentId = null, paymentToken = uri.getQueryParameter(KEY_PAYMENT_TOKEN) ?: return null ) } diff --git a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/paypal/PayPalPaymentInProgressFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/paypal/PayPalPaymentInProgressFragment.kt index f78bf50846..7e074eb46e 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/paypal/PayPalPaymentInProgressFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/paypal/PayPalPaymentInProgressFragment.kt @@ -126,7 +126,7 @@ class PayPalPaymentInProgressFragment : DialogFragment(R.layout.donation_in_prog val listener = FragmentResultListener { _, bundle -> val result: PayPalConfirmationResult? = bundle.getParcelableCompat(PayPalConfirmationDialogFragment.REQUEST_KEY, PayPalConfirmationResult::class.java) if (result != null) { - emitter.onSuccess(result) + emitter.onSuccess(result.copy(paymentId = createPaymentIntentResponse.paymentId)) } else { emitter.onError(DonationError.UserCancelledPaymentError(args.request.donateToSignalType.toErrorSource())) } diff --git a/app/src/test/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/paypal/PayPalConfirmationResultTest.kt b/app/src/test/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/paypal/PayPalConfirmationResultTest.kt index 7bdbea0653..f309c7347b 100644 --- a/app/src/test/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/paypal/PayPalConfirmationResultTest.kt +++ b/app/src/test/java/org/thoughtcrime/securesms/components/settings/app/subscription/donate/paypal/PayPalConfirmationResultTest.kt @@ -15,11 +15,10 @@ class PayPalConfirmationResultTest { companion object { private val PAYER_ID = "asdf" - private val PAYMENT_ID = "sdfg" private val PAYMENT_TOKEN = "dfgh" - private val TEST_URL = "${PayPalRepository.ONE_TIME_RETURN_URL}?PayerID=$PAYER_ID&paymentId=$PAYMENT_ID&token=$PAYMENT_TOKEN" - private val TEST_MISSING_PARAM_URL = "${PayPalRepository.ONE_TIME_RETURN_URL}?paymentId=$PAYMENT_ID&token=$PAYMENT_TOKEN" + private val TEST_URL = "${PayPalRepository.ONE_TIME_RETURN_URL}?PayerID=$PAYER_ID&token=$PAYMENT_TOKEN" + private val TEST_MISSING_PARAM_URL = "${PayPalRepository.ONE_TIME_RETURN_URL}?token=$PAYMENT_TOKEN" } @Test @@ -27,7 +26,7 @@ class PayPalConfirmationResultTest { val result = PayPalConfirmationResult.fromUrl(TEST_URL) assertEquals( - PayPalConfirmationResult(PAYER_ID, PAYMENT_ID, PAYMENT_TOKEN), + PayPalConfirmationResult(PAYER_ID, null, PAYMENT_TOKEN), result ) }