Chromium Code Reviews| Index: content/browser/payments/payment_manager_unittest.cc |
| diff --git a/content/browser/payments/payment_manager_unittest.cc b/content/browser/payments/payment_manager_unittest.cc |
| index 195d3527be5648e00e3a2d9db0b2f9543b7f324e..4bb21bd25d06053f175bde378dec13be75a7992c 100644 |
| --- a/content/browser/payments/payment_manager_unittest.cc |
| +++ b/content/browser/payments/payment_manager_unittest.cc |
| @@ -71,6 +71,11 @@ void GetPaymentInstrumentCallback(PaymentInstrumentPtr* out_instrument, |
| *out_status = status; |
| } |
| +void ClearPaymentInstrumentsCallback(PaymentHandlerStatus* out_status, |
| + PaymentHandlerStatus status) { |
| + *out_status = status; |
| +} |
| + |
| } // namespace |
| class PaymentManagerTest : public PaymentAppContentUnitTestBase { |
| @@ -123,6 +128,13 @@ class PaymentManagerTest : public PaymentAppContentUnitTestBase { |
| base::RunLoop().RunUntilIdle(); |
| } |
| + void ClearPaymentInstruments(PaymentHandlerStatus* out_status) { |
| + manager_->ClearPaymentInstruments( |
| + base::Bind(&ClearPaymentInstrumentsCallback, out_status)); |
| + base::RunLoop().RunUntilIdle(); |
|
please use gerrit instead
2017/05/02 20:08:12
Why twice?
zino
2017/05/03 14:50:00
My mistake. :P
Thanks.
|
| + base::RunLoop().RunUntilIdle(); |
| + } |
| + |
| private: |
| // Owned by payment_app_context_. |
| PaymentManager* manager_; |
| @@ -294,4 +306,42 @@ TEST_F(PaymentManagerTest, KeysOfPaymentInstruments) { |
| ASSERT_EQ("test_key2", keys[2]); |
| } |
| +TEST_F(PaymentManagerTest, ClearPaymentInstruments) { |
| + PaymentHandlerStatus status = PaymentHandlerStatus::NOT_FOUND; |
| + std::vector<std::string> keys; |
| + KeysOfPaymentInstruments(&keys, &status); |
| + ASSERT_EQ(PaymentHandlerStatus::SUCCESS, status); |
| + ASSERT_EQ(0U, keys.size()); |
| + |
| + { |
| + PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND; |
| + SetPaymentInstrument("test_key1", PaymentInstrument::New(), &write_status); |
| + ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status); |
| + } |
| + { |
| + PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND; |
| + SetPaymentInstrument("test_key3", PaymentInstrument::New(), &write_status); |
| + ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status); |
| + } |
| + { |
| + PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND; |
| + SetPaymentInstrument("test_key2", PaymentInstrument::New(), &write_status); |
| + ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status); |
| + } |
| + |
| + status = PaymentHandlerStatus::NOT_FOUND; |
| + KeysOfPaymentInstruments(&keys, &status); |
| + ASSERT_EQ(PaymentHandlerStatus::SUCCESS, status); |
| + ASSERT_EQ(3U, keys.size()); |
| + |
| + status = PaymentHandlerStatus::NOT_FOUND; |
| + ClearPaymentInstruments(&status); |
| + ASSERT_EQ(PaymentHandlerStatus::SUCCESS, status); |
| + |
| + status = PaymentHandlerStatus::NOT_FOUND; |
| + KeysOfPaymentInstruments(&keys, &status); |
| + ASSERT_EQ(PaymentHandlerStatus::SUCCESS, status); |
| + ASSERT_EQ(0U, keys.size()); |
| +} |
| + |
| } // namespace content |