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

Unified Diff: chrome/browser/autofill/wallet/wallet_client_unittest.cc

Issue 11773037: Implementation of sensitive card information escrowing (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixing Ilya's final comments Created 7 years, 11 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: 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..ab7fc03ba1a03de9dd5f1f53cbd32d958af8253c 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(OnDidEscrowSensitiveInformation,
+ void(const std::string& escrow_handle));
MOCK_METHOD1(OnGetFullWallet, void(FullWallet* full_wallet));
MOCK_METHOD1(OnGetWalletItems, void(WalletItems* wallet_items));
MOCK_METHOD0(OnSendExtendedAutofillStatus, void());
@@ -223,7 +228,7 @@ TEST_F(WalletClientTest, WalletErrorOnExpectedVoidResponse) {
WalletClient wallet_client(profile_.GetRequestContext());
wallet_client.SendExtendedAutofillStatus(true, "", "", "", &observer);
net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
- DCHECK(fetcher);
+ ASSERT_TRUE(fetcher);
fetcher->set_response_code(net::HTTP_INTERNAL_SERVER_ERROR);
fetcher->delegate()->OnURLFetchComplete(fetcher);
}
@@ -240,7 +245,7 @@ TEST_F(WalletClientTest, WalletErrorOnExpectedResponse) {
Cart cart("currency_code", "currency_code");
wallet_client.GetFullWallet("", "", "", cart, "", "", "", &observer);
net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
- DCHECK(fetcher);
+ ASSERT_TRUE(fetcher);
fetcher->set_response_code(net::HTTP_INTERNAL_SERVER_ERROR);
fetcher->delegate()->OnURLFetchComplete(fetcher);
}
@@ -254,7 +259,7 @@ TEST_F(WalletClientTest, NetworkFailureOnExpectedVoidResponse) {
WalletClient wallet_client(profile_.GetRequestContext());
wallet_client.SendExtendedAutofillStatus(true, "", "", "", &observer);
net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
- DCHECK(fetcher);
+ ASSERT_TRUE(fetcher);
fetcher->set_response_code(net::HTTP_UNAUTHORIZED);
fetcher->delegate()->OnURLFetchComplete(fetcher);
}
@@ -269,7 +274,7 @@ TEST_F(WalletClientTest, NetworkFailureOnExpectedResponse) {
Cart cart("currency_code", "currency_code");
wallet_client.GetFullWallet("", "", "", cart, "", "", "", &observer);
net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
- DCHECK(fetcher);
+ ASSERT_TRUE(fetcher);
fetcher->set_response_code(net::HTTP_UNAUTHORIZED);
fetcher->delegate()->OnURLFetchComplete(fetcher);
}
@@ -283,15 +288,53 @@ TEST_F(WalletClientTest, RequestError) {
WalletClient wallet_client(profile_.GetRequestContext());
wallet_client.SendExtendedAutofillStatus(true, "", "", "", &observer);
net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
- DCHECK(fetcher);
+ ASSERT_TRUE(fetcher);
fetcher->set_response_code(net::HTTP_BAD_REQUEST);
fetcher->delegate()->OnURLFetchComplete(fetcher);
}
// 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, OnDidEscrowSensitiveInformation("abc")).Times(1);
+
+ net::TestURLFetcherFactory factory;
+
+ WalletClient wallet_client(profile_.GetRequestContext());
+ wallet_client.EscrowSensitiveInformation("pan",
+ "cvn",
+ "obfuscated_gaia_id",
+ &observer);
+ net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
+ ASSERT_TRUE(fetcher);
+ EXPECT_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",
+ "obfuscated_gaia_id",
+ &observer);
+ net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
+ ASSERT_TRUE(fetcher);
+ EXPECT_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);
@@ -309,8 +352,8 @@ TEST_F(WalletClientTest, GetFullWallet) {
"session_material",
&observer);
net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
- DCHECK(fetcher);
- ASSERT_EQ(kGetFullWalletValidRequest, fetcher->upload_data());
+ ASSERT_TRUE(fetcher);
+ EXPECT_EQ(kGetFullWalletValidRequest, fetcher->upload_data());
fetcher->set_response_code(net::HTTP_OK);
fetcher->SetResponseString(kGetFullWalletValidResponse);
fetcher->delegate()->OnURLFetchComplete(fetcher);
@@ -330,8 +373,8 @@ TEST_F(WalletClientTest, AcceptLegalDocuments) {
kGoogleTransactionId,
&observer);
net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
- DCHECK(fetcher);
- ASSERT_EQ(kAcceptLegalDocumentsValidRequest, fetcher->upload_data());
+ ASSERT_TRUE(fetcher);
+ EXPECT_EQ(kAcceptLegalDocumentsValidRequest, fetcher->upload_data());
fetcher->set_response_code(net::HTTP_OK);
fetcher->delegate()->OnURLFetchComplete(fetcher);
}
@@ -345,8 +388,8 @@ TEST_F(WalletClientTest, GetWalletItems) {
WalletClient wallet_client(profile_.GetRequestContext());
wallet_client.GetWalletItems(&observer);
net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
- DCHECK(fetcher);
- ASSERT_EQ(kGetWalletItemsValidRequest, fetcher->upload_data());
+ ASSERT_TRUE(fetcher);
+ EXPECT_EQ(kGetWalletItemsValidRequest, fetcher->upload_data());
fetcher->set_response_code(net::HTTP_OK);
fetcher->SetResponseString(kGetWalletItemsValidResponse);
fetcher->delegate()->OnURLFetchComplete(fetcher);
@@ -365,8 +408,8 @@ TEST_F(WalletClientTest, SendExtendedAutofillOfStatusSuccess) {
"google_transaction_id",
&observer);
net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
- DCHECK(fetcher);
- ASSERT_EQ(kSendExtendedAutofillStatusOfSuccessValidRequest,
+ ASSERT_TRUE(fetcher);
+ EXPECT_EQ(kSendExtendedAutofillStatusOfSuccessValidRequest,
fetcher->upload_data());
fetcher->set_response_code(net::HTTP_OK);
fetcher->delegate()->OnURLFetchComplete(fetcher);
@@ -385,8 +428,8 @@ TEST_F(WalletClientTest, SendExtendedAutofillStatusOfFailure) {
"google_transaction_id",
&observer);
net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
- DCHECK(fetcher);
- ASSERT_EQ(kSendExtendedAutofillStatusOfFailureValidRequest,
+ ASSERT_TRUE(fetcher);
+ EXPECT_EQ(kSendExtendedAutofillStatusOfFailureValidRequest,
fetcher->upload_data());
fetcher->set_response_code(net::HTTP_OK);
fetcher->delegate()->OnURLFetchComplete(fetcher);
« no previous file with comments | « chrome/browser/autofill/wallet/wallet_client.cc ('k') | chrome/browser/autofill/wallet/wallet_service_url.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698