| Index: chrome/browser/autofill/wallet/wallet_client_unittest.cc
|
| diff --git a/chrome/browser/autofill/wallet/wallet_client_unittest.cc b/chrome/browser/autofill/wallet/wallet_client_unittest.cc
|
| index 0fbebd4032e7d6c3fc638b0e35ef2c8f91a02e3f..0f5a91a2ace72900cc01134955dac49874930913 100644
|
| --- a/chrome/browser/autofill/wallet/wallet_client_unittest.cc
|
| +++ b/chrome/browser/autofill/wallet/wallet_client_unittest.cc
|
| @@ -167,6 +167,9 @@ const char kSendExtendedAutofillStatusOfFailureValidRequest[] =
|
| "\"success\":false"
|
| "}";
|
|
|
| +const char kEscrowSensitiveInformationRequest[] =
|
| + "gid=obfuscated_gaia_id&cardNumber=pan&cvv=cvn";
|
| +
|
| } // anonymous namespace
|
|
|
| namespace wallet {
|
| @@ -202,6 +205,8 @@ class MockWalletClientObserver
|
| MOCK_METHOD0(OnAcceptLegalDocuments, void());
|
| MOCK_METHOD2(OnEncryptOtp, void(const std::string& encrypted_otp,
|
| const std::string& session_material));
|
| + MOCK_METHOD1(OnEscrowSensitiveInformation,
|
| + void(const std::string& escrow_handle));
|
| MOCK_METHOD1(OnGetFullWallet, void(FullWallet* full_wallet));
|
| MOCK_METHOD1(OnGetWalletItems, void(WalletItems* wallet_items));
|
| MOCK_METHOD0(OnSendExtendedAutofillStatus, void());
|
| @@ -289,9 +294,47 @@ TEST_F(WalletClientTest, RequestError) {
|
| }
|
|
|
| // TODO(ahutter): Add test for EncryptOtp.
|
| -// TODO(ahutter): Add retry and failure tests for EncryptOtp, GetWalletItems,
|
| +// TODO(ahutter): Add failure tests for EncryptOtp, GetWalletItems,
|
| // GetFullWallet for when data is missing or invalid.
|
|
|
| +TEST_F(WalletClientTest, EscrowSensitiveInformationSuccess) {
|
| + MockWalletClientObserver observer;
|
| + EXPECT_CALL(observer, OnEscrowSensitiveInformation("abc")).Times(1);
|
| +
|
| + net::TestURLFetcherFactory factory;
|
| +
|
| + WalletClient wallet_client(profile_.GetRequestContext());
|
| + wallet_client.EscrowSensitiveInformation("pan",
|
| + "cvn",
|
| + "obfuscatd_gaia_id",
|
| + &observer);
|
| + net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
|
| + DCHECK(fetcher);
|
| + ASSERT_EQ(kEscrowSensitiveInformationRequest, fetcher->upload_data());
|
| + fetcher->set_response_code(net::HTTP_OK);
|
| + fetcher->SetResponseString("abc");
|
| + fetcher->delegate()->OnURLFetchComplete(fetcher);
|
| +}
|
| +
|
| +TEST_F(WalletClientTest, EscrowSensitiveInformationFailure) {
|
| + MockWalletClientObserver observer;
|
| + EXPECT_CALL(observer, OnWalletError()).Times(1);
|
| +
|
| + net::TestURLFetcherFactory factory;
|
| +
|
| + WalletClient wallet_client(profile_.GetRequestContext());
|
| + wallet_client.EscrowSensitiveInformation("pan",
|
| + "cvn",
|
| + "obfuscatd_gaia_id",
|
| + &observer);
|
| + net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
|
| + DCHECK(fetcher);
|
| + ASSERT_EQ(kEscrowSensitiveInformationRequest, fetcher->upload_data());
|
| + fetcher->set_response_code(net::HTTP_OK);
|
| + fetcher->SetResponseString("");
|
| + fetcher->delegate()->OnURLFetchComplete(fetcher);
|
| +}
|
| +
|
| TEST_F(WalletClientTest, GetFullWallet) {
|
| MockWalletClientObserver observer;
|
| EXPECT_CALL(observer, OnGetFullWallet(testing::NotNull())).Times(1);
|
|
|