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

Side by Side Diff: content/browser/payments/payment_manager_unittest.cc

Issue 2958333002: [Payments] Implement web payment app manifest (Closed)
Patch Set: rename and comments Created 3 years, 5 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <utility> 5 #include <utility>
6 6
7 #include "base/macros.h" 7 #include "base/macros.h"
8 #include "base/run_loop.h" 8 #include "base/run_loop.h"
9 #include "content/browser/payments/payment_app_content_unittest_base.h" 9 #include "content/browser/payments/payment_app_content_unittest_base.h"
10 #include "testing/gtest/include/gtest/gtest.h" 10 #include "testing/gtest/include/gtest/gtest.h"
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 DISALLOW_COPY_AND_ASSIGN(PaymentManagerTest); 122 DISALLOW_COPY_AND_ASSIGN(PaymentManagerTest);
123 }; 123 };
124 124
125 TEST_F(PaymentManagerTest, SetAndGetPaymentInstrument) { 125 TEST_F(PaymentManagerTest, SetAndGetPaymentInstrument) {
126 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND; 126 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND;
127 PaymentInstrumentPtr write_details = PaymentInstrument::New(); 127 PaymentInstrumentPtr write_details = PaymentInstrument::New();
128 write_details->name = "Visa ending ****4756", 128 write_details->name = "Visa ending ****4756",
129 write_details->enabled_methods.push_back("visa"); 129 write_details->enabled_methods.push_back("visa");
130 write_details->stringified_capabilities = "{}"; 130 write_details->stringified_capabilities = "{}";
131 SetPaymentInstrument("test_key", std::move(write_details), &write_status); 131 SetPaymentInstrument("test_key", std::move(write_details), &write_status);
132 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status); 132 // Write the first instrument of a web payment app will return
133 // FETCH_PAYMENT_APP_INFO_FAILED since the web app's manifest is not
134 // available, but the write of the instrument is succeed, othewise will return
135 // the other errors.
136 ASSERT_EQ(PaymentHandlerStatus::FETCH_PAYMENT_APP_INFO_FAILED, write_status);
133 137
134 PaymentHandlerStatus read_status = PaymentHandlerStatus::NOT_FOUND; 138 PaymentHandlerStatus read_status = PaymentHandlerStatus::NOT_FOUND;
135 PaymentInstrumentPtr read_details; 139 PaymentInstrumentPtr read_details;
136 GetPaymentInstrument("test_key", &read_details, &read_status); 140 GetPaymentInstrument("test_key", &read_details, &read_status);
137 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, read_status); 141 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, read_status);
138 EXPECT_EQ("Visa ending ****4756", read_details->name); 142 EXPECT_EQ("Visa ending ****4756", read_details->name);
139 ASSERT_EQ(1U, read_details->enabled_methods.size()); 143 ASSERT_EQ(1U, read_details->enabled_methods.size());
140 EXPECT_EQ("visa", read_details->enabled_methods[0]); 144 EXPECT_EQ("visa", read_details->enabled_methods[0]);
141 EXPECT_EQ("{}", read_details->stringified_capabilities); 145 EXPECT_EQ("{}", read_details->stringified_capabilities);
142 } 146 }
143 147
144 TEST_F(PaymentManagerTest, GetUnstoredPaymentInstrument) { 148 TEST_F(PaymentManagerTest, GetUnstoredPaymentInstrument) {
145 PaymentHandlerStatus read_status = PaymentHandlerStatus::SUCCESS; 149 PaymentHandlerStatus read_status = PaymentHandlerStatus::SUCCESS;
146 PaymentInstrumentPtr read_details; 150 PaymentInstrumentPtr read_details;
147 GetPaymentInstrument("test_key", &read_details, &read_status); 151 GetPaymentInstrument("test_key", &read_details, &read_status);
148 ASSERT_EQ(PaymentHandlerStatus::NOT_FOUND, read_status); 152 ASSERT_EQ(PaymentHandlerStatus::NOT_FOUND, read_status);
149 } 153 }
150 154
151 TEST_F(PaymentManagerTest, DeletePaymentInstrument) { 155 TEST_F(PaymentManagerTest, DeletePaymentInstrument) {
152 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND; 156 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND;
153 PaymentInstrumentPtr write_details = PaymentInstrument::New(); 157 PaymentInstrumentPtr write_details = PaymentInstrument::New();
154 write_details->name = "Visa ending ****4756", 158 write_details->name = "Visa ending ****4756",
155 write_details->enabled_methods.push_back("visa"); 159 write_details->enabled_methods.push_back("visa");
156 write_details->stringified_capabilities = "{}"; 160 write_details->stringified_capabilities = "{}";
157 SetPaymentInstrument("test_key", std::move(write_details), &write_status); 161 SetPaymentInstrument("test_key", std::move(write_details), &write_status);
158 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status); 162 // Write the first instrument of a web payment app will return
163 // FETCH_PAYMENT_APP_INFO_FAILED since the web app's manifest is not
164 // available, but the write of the instrument is succeed, othewise will return
165 // the other errors.
166 ASSERT_EQ(PaymentHandlerStatus::FETCH_PAYMENT_APP_INFO_FAILED, write_status);
159 167
160 PaymentHandlerStatus read_status = PaymentHandlerStatus::NOT_FOUND; 168 PaymentHandlerStatus read_status = PaymentHandlerStatus::NOT_FOUND;
161 PaymentInstrumentPtr read_details; 169 PaymentInstrumentPtr read_details;
162 GetPaymentInstrument("test_key", &read_details, &read_status); 170 GetPaymentInstrument("test_key", &read_details, &read_status);
163 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, read_status); 171 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, read_status);
164 172
165 PaymentHandlerStatus delete_status = PaymentHandlerStatus::NOT_FOUND; 173 PaymentHandlerStatus delete_status = PaymentHandlerStatus::NOT_FOUND;
166 DeletePaymentInstrument("test_key", &delete_status); 174 DeletePaymentInstrument("test_key", &delete_status);
167 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, delete_status); 175 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, delete_status);
168 176
169 read_status = PaymentHandlerStatus::NOT_FOUND; 177 read_status = PaymentHandlerStatus::NOT_FOUND;
170 GetPaymentInstrument("test_key", &read_details, &read_status); 178 GetPaymentInstrument("test_key", &read_details, &read_status);
171 ASSERT_EQ(PaymentHandlerStatus::NOT_FOUND, read_status); 179 ASSERT_EQ(PaymentHandlerStatus::NOT_FOUND, read_status);
172 } 180 }
173 181
174 TEST_F(PaymentManagerTest, HasPaymentInstrument) { 182 TEST_F(PaymentManagerTest, HasPaymentInstrument) {
175 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND; 183 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND;
176 PaymentInstrumentPtr write_details = PaymentInstrument::New(); 184 PaymentInstrumentPtr write_details = PaymentInstrument::New();
177 write_details->name = "Visa ending ****4756", 185 write_details->name = "Visa ending ****4756",
178 write_details->enabled_methods.push_back("visa"); 186 write_details->enabled_methods.push_back("visa");
179 write_details->stringified_capabilities = "{}"; 187 write_details->stringified_capabilities = "{}";
180 SetPaymentInstrument("test_key", std::move(write_details), &write_status); 188 SetPaymentInstrument("test_key", std::move(write_details), &write_status);
181 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status); 189 // Write the first instrument of a web payment app will return
190 // FETCH_PAYMENT_APP_INFO_FAILED since the web app's manifest is not
191 // available, but the write of the instrument is succeed, othewise will return
192 // the other errors.
193 ASSERT_EQ(PaymentHandlerStatus::FETCH_PAYMENT_APP_INFO_FAILED, write_status);
182 194
183 PaymentHandlerStatus has_status = PaymentHandlerStatus::NOT_FOUND; 195 PaymentHandlerStatus has_status = PaymentHandlerStatus::NOT_FOUND;
184 HasPaymentInstrument("test_key", &has_status); 196 HasPaymentInstrument("test_key", &has_status);
185 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, has_status); 197 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, has_status);
186 198
187 HasPaymentInstrument("unstored_test_key", &has_status); 199 HasPaymentInstrument("unstored_test_key", &has_status);
188 ASSERT_EQ(PaymentHandlerStatus::NOT_FOUND, has_status); 200 ASSERT_EQ(PaymentHandlerStatus::NOT_FOUND, has_status);
189 } 201 }
190 202
191 TEST_F(PaymentManagerTest, KeysOfPaymentInstruments) { 203 TEST_F(PaymentManagerTest, KeysOfPaymentInstruments) {
192 PaymentHandlerStatus keys_status = PaymentHandlerStatus::NOT_FOUND; 204 PaymentHandlerStatus keys_status = PaymentHandlerStatus::NOT_FOUND;
193 std::vector<std::string> keys; 205 std::vector<std::string> keys;
194 KeysOfPaymentInstruments(&keys, &keys_status); 206 KeysOfPaymentInstruments(&keys, &keys_status);
195 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, keys_status); 207 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, keys_status);
196 ASSERT_EQ(0U, keys.size()); 208 ASSERT_EQ(0U, keys.size());
197 209
198 { 210 {
199 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND; 211 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND;
200 SetPaymentInstrument("test_key1", PaymentInstrument::New(), &write_status); 212 SetPaymentInstrument("test_key1", PaymentInstrument::New(), &write_status);
201 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status); 213 // Write the first instrument of a web payment app will return
214 // FETCH_PAYMENT_APP_INFO_FAILED since the web app's manifest is not
215 // available, but the write of the instrument is succeed, othewise will
216 // return the other errors.
217 ASSERT_EQ(PaymentHandlerStatus::FETCH_PAYMENT_APP_INFO_FAILED,
218 write_status);
202 } 219 }
203 { 220 {
204 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND; 221 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND;
205 SetPaymentInstrument("test_key3", PaymentInstrument::New(), &write_status); 222 SetPaymentInstrument("test_key3", PaymentInstrument::New(), &write_status);
206 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status); 223 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status);
207 } 224 }
208 { 225 {
209 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND; 226 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND;
210 SetPaymentInstrument("test_key2", PaymentInstrument::New(), &write_status); 227 SetPaymentInstrument("test_key2", PaymentInstrument::New(), &write_status);
211 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status); 228 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status);
(...skipping 11 matching lines...) Expand all
223 TEST_F(PaymentManagerTest, ClearPaymentInstruments) { 240 TEST_F(PaymentManagerTest, ClearPaymentInstruments) {
224 PaymentHandlerStatus status = PaymentHandlerStatus::NOT_FOUND; 241 PaymentHandlerStatus status = PaymentHandlerStatus::NOT_FOUND;
225 std::vector<std::string> keys; 242 std::vector<std::string> keys;
226 KeysOfPaymentInstruments(&keys, &status); 243 KeysOfPaymentInstruments(&keys, &status);
227 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, status); 244 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, status);
228 ASSERT_EQ(0U, keys.size()); 245 ASSERT_EQ(0U, keys.size());
229 246
230 { 247 {
231 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND; 248 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND;
232 SetPaymentInstrument("test_key1", PaymentInstrument::New(), &write_status); 249 SetPaymentInstrument("test_key1", PaymentInstrument::New(), &write_status);
233 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status); 250 // Write the first instrument of a web payment app will return
251 // FETCH_PAYMENT_APP_INFO_FAILED since the web app's manifest is not
252 // available, but the write of the instrument is succeed, othewise will
253 // return the other errors.
254 ASSERT_EQ(PaymentHandlerStatus::FETCH_PAYMENT_APP_INFO_FAILED,
255 write_status);
234 } 256 }
235 { 257 {
236 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND; 258 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND;
237 SetPaymentInstrument("test_key3", PaymentInstrument::New(), &write_status); 259 SetPaymentInstrument("test_key3", PaymentInstrument::New(), &write_status);
238 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status); 260 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status);
239 } 261 }
240 { 262 {
241 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND; 263 PaymentHandlerStatus write_status = PaymentHandlerStatus::NOT_FOUND;
242 SetPaymentInstrument("test_key2", PaymentInstrument::New(), &write_status); 264 SetPaymentInstrument("test_key2", PaymentInstrument::New(), &write_status);
243 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status); 265 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, write_status);
244 } 266 }
245 267
246 status = PaymentHandlerStatus::NOT_FOUND; 268 status = PaymentHandlerStatus::NOT_FOUND;
247 KeysOfPaymentInstruments(&keys, &status); 269 KeysOfPaymentInstruments(&keys, &status);
248 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, status); 270 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, status);
249 ASSERT_EQ(3U, keys.size()); 271 ASSERT_EQ(3U, keys.size());
250 272
251 status = PaymentHandlerStatus::NOT_FOUND; 273 status = PaymentHandlerStatus::NOT_FOUND;
252 ClearPaymentInstruments(&status); 274 ClearPaymentInstruments(&status);
253 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, status); 275 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, status);
254 276
255 status = PaymentHandlerStatus::NOT_FOUND; 277 status = PaymentHandlerStatus::NOT_FOUND;
256 KeysOfPaymentInstruments(&keys, &status); 278 KeysOfPaymentInstruments(&keys, &status);
257 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, status); 279 ASSERT_EQ(PaymentHandlerStatus::SUCCESS, status);
258 ASSERT_EQ(0U, keys.size()); 280 ASSERT_EQ(0U, keys.size());
259 } 281 }
260 282
261 } // namespace content 283 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/payments/payment_manager.cc ('k') | content/browser/service_worker/service_worker_context_wrapper.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698