From 2b6ecba3f0533a12ddcc5ff2698959f0bee509f9 Mon Sep 17 00:00:00 2001 From: Sai Date: Tue, 10 Dec 2024 12:06:19 -0800 Subject: [PATCH] add tests --- .../api/paypal/PayPalLauncherUnitTest.kt | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/PayPal/src/test/java/com/braintreepayments/api/paypal/PayPalLauncherUnitTest.kt b/PayPal/src/test/java/com/braintreepayments/api/paypal/PayPalLauncherUnitTest.kt index 378494b78d..b1d329cd25 100644 --- a/PayPal/src/test/java/com/braintreepayments/api/paypal/PayPalLauncherUnitTest.kt +++ b/PayPal/src/test/java/com/braintreepayments/api/paypal/PayPalLauncherUnitTest.kt @@ -36,6 +36,7 @@ class PayPalLauncherUnitTest { private val merchantRepository = mockk(relaxed = true) private val getReturnLinkUseCase = mockk() private val returnUrl = "https://return.url" + private val deepLinkScheme = "deepLinkScheme" private lateinit var sut: PayPalLauncher @@ -124,6 +125,42 @@ class PayPalLauncherUnitTest { } } + @Test + @Throws(JSONException::class) + fun `handleReturnToApp with deeplinkScheme sends handle started event with deeplink scheme`() { + every { getReturnLinkUseCase() } returns GetReturnLinkUseCase.ReturnLinkResult.DeepLink( + deepLinkScheme + ) + sut.handleReturnToApp( + PayPalPendingRequest.Started(pendingRequestString), + intent + ) + verify { + analyticsClient.sendEvent( + PayPalAnalytics.HANDLE_RETURN_STARTED, + AnalyticsEventParams(appSwitchUrl = deepLinkScheme) + ) + } + } + + @Test + @Throws(JSONException::class) + fun `handleReturnToApp with ReturnLinkResult Failure sends handle started event with null appSwitchUrl`() { + every { getReturnLinkUseCase() } returns GetReturnLinkUseCase.ReturnLinkResult.Failure( + Exception("handle return start failed") + ) + sut.handleReturnToApp( + PayPalPendingRequest.Started(pendingRequestString), + intent + ) + verify { + analyticsClient.sendEvent( + PayPalAnalytics.HANDLE_RETURN_STARTED, + AnalyticsEventParams() + ) + } + } + @Test @Throws(JSONException::class) fun `handleReturnToApp when result exists returns result`() {