Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(588)

Unified Diff: content/browser/payments/payment_manager_unittest.cc

Issue 2850203002: PaymentHandler: Implement PaymentInstruments.keys(). (Closed)
Patch Set: PaymentHandler: Implement PaymentInstruments.Keys(). Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 37d48295ad534b9e7b64ce88f9cc2daf03686883..78609584c33729cf2076b8517f520a372fce687b 100644
--- a/content/browser/payments/payment_manager_unittest.cc
+++ b/content/browser/payments/payment_manager_unittest.cc
@@ -50,6 +50,14 @@ void SetPaymentInstrumentCallback(PaymentHandlerStatus* out_status,
*out_status = status;
}
+void KeysOfPaymentInstrumentsCallback(std::vector<std::string>* out_keys,
+ PaymentHandlerStatus* out_status,
+ const std::vector<std::string>& keys,
+ PaymentHandlerStatus status) {
+ *out_keys = keys;
+ *out_status = status;
+}
+
void HasPaymentInstrumentCallback(PaymentHandlerStatus* out_status,
PaymentHandlerStatus status) {
*out_status = status;
@@ -92,6 +100,13 @@ class PaymentManagerTest : public PaymentAppContentUnitTestBase {
base::RunLoop().RunUntilIdle();
}
+ void KeysOfPaymentInstruments(std::vector<std::string>* out_keys,
+ PaymentHandlerStatus* out_status) {
+ manager_->KeysOfPaymentInstruments(
+ base::Bind(&KeysOfPaymentInstrumentsCallback, out_keys, out_status));
+ base::RunLoop().RunUntilIdle();
+ }
+
void HasPaymentInstrument(const std::string& instrument_key,
PaymentHandlerStatus* out_status) {
manager_->HasPaymentInstrument(
@@ -247,4 +262,30 @@ TEST_F(PaymentManagerTest, HasPaymentInstrument) {
ASSERT_EQ(PaymentHandlerStatus::NOT_FOUND, has_status);
}
+TEST_F(PaymentManagerTest, KeysOfPaymentInstruments) {
Tom Sepez 2017/05/01 17:49:33 Maybe also test sending back an empty array to be
zino 2017/05/02 15:03:58 Done.
+ {
+ 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);
+ }
+
+ PaymentHandlerStatus keys_status = PaymentHandlerStatus::NOT_FOUND;
+ std::vector<std::string> keys;
+ KeysOfPaymentInstruments(&keys, &keys_status);
+ ASSERT_EQ(3U, keys.size());
+ ASSERT_EQ("test_key1", keys[0]);
+ ASSERT_EQ("test_key3", keys[1]);
+ ASSERT_EQ("test_key2", keys[2]);
+}
+
} // namespace content

Powered by Google App Engine
This is Rietveld 408576698