Chromium Code Reviews| Index: chrome/browser/ui/views/payments/payment_request_can_make_payment_metrics_browsertest.cc |
| diff --git a/chrome/browser/ui/views/payments/payment_request_can_make_payment_metrics_browsertest.cc b/chrome/browser/ui/views/payments/payment_request_can_make_payment_metrics_browsertest.cc |
| index 3c75b6e8263f0079cd2d6bf0658e028b7e7c8bf3..8901d1d6848581457f6313c1690d88f778df6d39 100644 |
| --- a/chrome/browser/ui/views/payments/payment_request_can_make_payment_metrics_browsertest.cc |
| +++ b/chrome/browser/ui/views/payments/payment_request_can_make_payment_metrics_browsertest.cc |
| @@ -230,6 +230,79 @@ IN_PROC_BROWSER_TEST_F(PaymentRequestCanMakePaymentMetricsTest, |
| JourneyLogger::COMPLETION_STATUS_USER_ABORTED, 1); |
| } |
| +IN_PROC_BROWSER_TEST_F(PaymentRequestCanMakePaymentMetricsTest, |
| + Called_False_Shown_UserAborted_Navigation) { |
| + base::HistogramTester histogram_tester; |
| + |
| + // Don't add a card on file, so CanMakePayment returns false. |
| + // Start the Payment Request and expect CanMakePayment to be called before the |
| + // Payment Request is shown. |
| + ResetEventObserverForSequence( |
| + {DialogEvent::CAN_MAKE_PAYMENT_CALLED, DialogEvent::DIALOG_OPENED}); |
| + ASSERT_TRUE(content::ExecuteScript(GetActiveWebContents(), "queryShow();")); |
| + WaitForObservedEvent(); |
| + |
| + // Simulate that the user navigates away from the Payment Request. |
| + ResetEventObserverForSequence({DialogEvent::DIALOG_CLOSED}); |
| + NavigateTo("/payment_request_email_test.html"); |
|
Mathieu
2017/05/09 18:12:19
can you have a test that navigates to a different
sebsg
2017/05/10 14:58:48
Done.
|
| + WaitForObservedEvent(); |
| + |
| + // Make sure the metrics are logged correctly. |
| + histogram_tester.ExpectBucketCount("PaymentRequest.CanMakePayment.Usage", |
| + JourneyLogger::CAN_MAKE_PAYMENT_USED, 1); |
| + histogram_tester.ExpectBucketCount( |
| + "PaymentRequest.CanMakePayment.Used.EffectOnShow", |
| + JourneyLogger::CMP_SHOW_DID_SHOW, 1); |
| + histogram_tester.ExpectBucketCount( |
| + "PaymentRequest.CanMakePayment.Used.FalseWithShowEffectOnCompletion", |
| + JourneyLogger::COMPLETION_STATUS_USER_ABORTED, 1); |
| +} |
| + |
| +IN_PROC_BROWSER_TEST_F(PaymentRequestCanMakePaymentMetricsTest, |
| + DISABLED_Called_True_NotShown) { |
|
Mathieu
2017/05/09 18:12:19
can you enable?
sebsg
2017/05/10 14:58:48
Done.
|
| + base::HistogramTester histogram_tester; |
| + |
| + // Setup a credit card with an associated billing address so CanMakePayment |
| + // returns true. |
| + SetupInitialAddressAndCreditCard(); |
| + |
| + // Try to start the Payment Request, but only CanMakePayment should be called. |
| + ResetEventObserver(DialogEvent::CAN_MAKE_PAYMENT_CALLED); |
| + ASSERT_TRUE(content::ExecuteScript(GetActiveWebContents(), "queryNoShow();")); |
| + WaitForObservedEvent(); |
| + |
| + // Navigate away to trigger the log. |
| + NavigateTo("/payment_request_email_test.html"); |
| + |
| + // Make sure the metrics are logged correctly. |
| + histogram_tester.ExpectBucketCount("PaymentRequest.CanMakePayment.Usage", |
| + JourneyLogger::CAN_MAKE_PAYMENT_USED, 1); |
| + histogram_tester.ExpectBucketCount( |
| + "PaymentRequest.CanMakePayment.Used.EffectOnShow", |
| + JourneyLogger::CMP_SHOW_COULD_MAKE_PAYMENT, 1); |
| +} |
| + |
| +IN_PROC_BROWSER_TEST_F(PaymentRequestCanMakePaymentMetricsTest, |
| + DISABLED_Called_False_NotShown) { |
|
Mathieu
2017/05/09 18:12:19
same
sebsg
2017/05/10 14:58:47
Done.
|
| + base::HistogramTester histogram_tester; |
| + |
| + // Don't add a card on file, so CanMakePayment returns false. |
| + // Try to start the Payment Request, but only CanMakePayment should be called. |
| + ResetEventObserver(DialogEvent::CAN_MAKE_PAYMENT_CALLED); |
| + ASSERT_TRUE(content::ExecuteScript(GetActiveWebContents(), "queryNoShow();")); |
| + WaitForObservedEvent(); |
| + |
| + // Navigate away to trigger the log. |
| + NavigateTo("/payment_request_email_test.html"); |
| + |
| + // Make sure the metrics are logged correctly. |
| + histogram_tester.ExpectBucketCount("PaymentRequest.CanMakePayment.Usage", |
| + JourneyLogger::CAN_MAKE_PAYMENT_USED, 1); |
| + histogram_tester.ExpectBucketCount( |
| + "PaymentRequest.CanMakePayment.Used.EffectOnShow", |
| + JourneyLogger::CMP_SHOW_COULD_NOT_MAKE_PAYMENT_AND_DID_NOT_SHOW, 1); |
| +} |
| + |
| IN_PROC_BROWSER_TEST_F(PaymentRequestCanMakePaymentMetricsTest, |
| NotCalled_Shown_Completed) { |
| base::HistogramTester histogram_tester; |