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

Side by Side Diff: third_party/WebKit/Source/modules/payments/OnPaymentResponseTest.cpp

Issue 2072963002: Remove PaymentResponse.totalAmount according to latest spec (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: final touch-up Created 4 years, 6 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 // Tests for PaymentRequest::OnPaymentResponse(). 5 // Tests for PaymentRequest::OnPaymentResponse().
6 6
7 #include "bindings/core/v8/ScriptFunction.h" 7 #include "bindings/core/v8/ScriptFunction.h"
8 #include "bindings/core/v8/V8BindingForTesting.h" 8 #include "bindings/core/v8/V8BindingForTesting.h"
9 #include "bindings/modules/v8/V8PaymentResponse.h" 9 #include "bindings/modules/v8/V8PaymentResponse.h"
10 #include "modules/payments/PaymentAddress.h" 10 #include "modules/payments/PaymentAddress.h"
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 TEST(PaymentRequestTest, RejectMissingEmail) 62 TEST(PaymentRequestTest, RejectMissingEmail)
63 { 63 {
64 V8TestingScope scope; 64 V8TestingScope scope;
65 PaymentRequestMockFunctionScope funcs(scope.getScriptState()); 65 PaymentRequestMockFunctionScope funcs(scope.getScriptState());
66 makePaymentRequestOriginSecure(scope.document()); 66 makePaymentRequestOriginSecure(scope.document());
67 PaymentOptions options; 67 PaymentOptions options;
68 options.setRequestPayerEmail(true); 68 options.setRequestPayerEmail(true);
69 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState()); 69 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState());
70 EXPECT_FALSE(scope.getExceptionState().hadException()); 70 EXPECT_FALSE(scope.getExceptionState().hadException());
71 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew(); 71 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew();
72 response->total_amount = mojom::blink::PaymentCurrencyAmount::New();
73 72
74 request->show(scope.getScriptState()).then(funcs.expectNoCall(), funcs.expec tCall()); 73 request->show(scope.getScriptState()).then(funcs.expectNoCall(), funcs.expec tCall());
75 74
76 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response)); 75 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response));
77 } 76 }
78 77
79 // If the merchant requests a phone number, but the browser does not provide it, 78 // If the merchant requests a phone number, but the browser does not provide it,
80 // reject the show() promise. 79 // reject the show() promise.
81 TEST(PaymentRequestTest, RejectMissingPhone) 80 TEST(PaymentRequestTest, RejectMissingPhone)
82 { 81 {
83 V8TestingScope scope; 82 V8TestingScope scope;
84 PaymentRequestMockFunctionScope funcs(scope.getScriptState()); 83 PaymentRequestMockFunctionScope funcs(scope.getScriptState());
85 makePaymentRequestOriginSecure(scope.document()); 84 makePaymentRequestOriginSecure(scope.document());
86 PaymentOptions options; 85 PaymentOptions options;
87 options.setRequestPayerPhone(true); 86 options.setRequestPayerPhone(true);
88 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState()); 87 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState());
89 EXPECT_FALSE(scope.getExceptionState().hadException()); 88 EXPECT_FALSE(scope.getExceptionState().hadException());
90 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew(); 89 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew();
91 response->total_amount = mojom::blink::PaymentCurrencyAmount::New();
92 90
93 request->show(scope.getScriptState()).then(funcs.expectNoCall(), funcs.expec tCall()); 91 request->show(scope.getScriptState()).then(funcs.expectNoCall(), funcs.expec tCall());
94 92
95 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response)); 93 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response));
96 } 94 }
97 95
98 // If the merchant requests shipping information, but the browser provides an 96 // If the merchant requests shipping information, but the browser provides an
99 // empty string for shipping option, reject the show() promise. 97 // empty string for shipping option, reject the show() promise.
100 TEST(OnPaymentResponseTest, RejectEmptyShippingOption) 98 TEST(OnPaymentResponseTest, RejectEmptyShippingOption)
101 { 99 {
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
143 TEST(PaymentRequestTest, RejectEmptyEmail) 141 TEST(PaymentRequestTest, RejectEmptyEmail)
144 { 142 {
145 V8TestingScope scope; 143 V8TestingScope scope;
146 PaymentRequestMockFunctionScope funcs(scope.getScriptState()); 144 PaymentRequestMockFunctionScope funcs(scope.getScriptState());
147 makePaymentRequestOriginSecure(scope.document()); 145 makePaymentRequestOriginSecure(scope.document());
148 PaymentOptions options; 146 PaymentOptions options;
149 options.setRequestPayerEmail(true); 147 options.setRequestPayerEmail(true);
150 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState()); 148 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState());
151 EXPECT_FALSE(scope.getExceptionState().hadException()); 149 EXPECT_FALSE(scope.getExceptionState().hadException());
152 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew(); 150 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew();
153 response->total_amount = mojom::blink::PaymentCurrencyAmount::New();
154 response->payer_email = ""; 151 response->payer_email = "";
155 152
156 request->show(scope.getScriptState()).then(funcs.expectNoCall(), funcs.expec tCall()); 153 request->show(scope.getScriptState()).then(funcs.expectNoCall(), funcs.expec tCall());
157 154
158 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response)); 155 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response));
159 } 156 }
160 157
161 // If the merchant requests a phone number, but the browser provides an empty 158 // If the merchant requests a phone number, but the browser provides an empty
162 // string for the phone number, reject the show() promise. 159 // string for the phone number, reject the show() promise.
163 TEST(PaymentRequestTest, RejectEmptyPhone) 160 TEST(PaymentRequestTest, RejectEmptyPhone)
164 { 161 {
165 V8TestingScope scope; 162 V8TestingScope scope;
166 PaymentRequestMockFunctionScope funcs(scope.getScriptState()); 163 PaymentRequestMockFunctionScope funcs(scope.getScriptState());
167 makePaymentRequestOriginSecure(scope.document()); 164 makePaymentRequestOriginSecure(scope.document());
168 PaymentOptions options; 165 PaymentOptions options;
169 options.setRequestPayerPhone(true); 166 options.setRequestPayerPhone(true);
170 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState()); 167 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState());
171 EXPECT_FALSE(scope.getExceptionState().hadException()); 168 EXPECT_FALSE(scope.getExceptionState().hadException());
172 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew(); 169 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew();
173 response->total_amount = mojom::blink::PaymentCurrencyAmount::New();
174 response->payer_phone = ""; 170 response->payer_phone = "";
175 171
176 request->show(scope.getScriptState()).then(funcs.expectNoCall(), funcs.expec tCall()); 172 request->show(scope.getScriptState()).then(funcs.expectNoCall(), funcs.expec tCall());
177 173
178 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response)); 174 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response));
179 } 175 }
180 176
181 // If the merchant does not request shipping information, but the browser 177 // If the merchant does not request shipping information, but the browser
182 // provides a shipping address, reject the show() promise. 178 // provides a shipping address, reject the show() promise.
183 TEST(OnPaymentResponseTest, RejectNotRequestedAddress) 179 TEST(OnPaymentResponseTest, RejectNotRequestedAddress)
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
224 TEST(PaymentRequestTest, RejectNotRequestedEmail) 220 TEST(PaymentRequestTest, RejectNotRequestedEmail)
225 { 221 {
226 V8TestingScope scope; 222 V8TestingScope scope;
227 PaymentRequestMockFunctionScope funcs(scope.getScriptState()); 223 PaymentRequestMockFunctionScope funcs(scope.getScriptState());
228 makePaymentRequestOriginSecure(scope.document()); 224 makePaymentRequestOriginSecure(scope.document());
229 PaymentOptions options; 225 PaymentOptions options;
230 options.setRequestPayerEmail(false); 226 options.setRequestPayerEmail(false);
231 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState()); 227 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState());
232 EXPECT_FALSE(scope.getExceptionState().hadException()); 228 EXPECT_FALSE(scope.getExceptionState().hadException());
233 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew(); 229 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew();
234 response->total_amount = mojom::blink::PaymentCurrencyAmount::New();
235 response->payer_email = ""; 230 response->payer_email = "";
236 231
237 request->show(scope.getScriptState()).then(funcs.expectNoCall(), funcs.expec tCall()); 232 request->show(scope.getScriptState()).then(funcs.expectNoCall(), funcs.expec tCall());
238 233
239 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response)); 234 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response));
240 } 235 }
241 236
242 // If the merchant does not request a phone number, but the browser provides it, 237 // If the merchant does not request a phone number, but the browser provides it,
243 // reject the show() promise. 238 // reject the show() promise.
244 TEST(PaymentRequestTest, RejectNotRequestedPhone) 239 TEST(PaymentRequestTest, RejectNotRequestedPhone)
245 { 240 {
246 V8TestingScope scope; 241 V8TestingScope scope;
247 PaymentRequestMockFunctionScope funcs(scope.getScriptState()); 242 PaymentRequestMockFunctionScope funcs(scope.getScriptState());
248 makePaymentRequestOriginSecure(scope.document()); 243 makePaymentRequestOriginSecure(scope.document());
249 PaymentOptions options; 244 PaymentOptions options;
250 options.setRequestPayerPhone(false); 245 options.setRequestPayerPhone(false);
251 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState()); 246 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState());
252 EXPECT_FALSE(scope.getExceptionState().hadException()); 247 EXPECT_FALSE(scope.getExceptionState().hadException());
253 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew(); 248 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew();
254 response->total_amount = mojom::blink::PaymentCurrencyAmount::New();
255 response->payer_phone = ""; 249 response->payer_phone = "";
256 250
257 request->show(scope.getScriptState()).then(funcs.expectNoCall(), funcs.expec tCall()); 251 request->show(scope.getScriptState()).then(funcs.expectNoCall(), funcs.expec tCall());
258 252
259 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response)); 253 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response));
260 } 254 }
261 255
262 // If the merchant requests shipping information, but the browser provides an 256 // If the merchant requests shipping information, but the browser provides an
263 // invalid shipping address, reject the show() promise. 257 // invalid shipping address, reject the show() promise.
264 TEST(OnPaymentResponseTest, RejectInvalidAddress) 258 TEST(OnPaymentResponseTest, RejectInvalidAddress)
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
340 TEST(PaymentRequestTest, CanRequestEmail) 334 TEST(PaymentRequestTest, CanRequestEmail)
341 { 335 {
342 V8TestingScope scope; 336 V8TestingScope scope;
343 PaymentRequestMockFunctionScope funcs(scope.getScriptState()); 337 PaymentRequestMockFunctionScope funcs(scope.getScriptState());
344 makePaymentRequestOriginSecure(scope.document()); 338 makePaymentRequestOriginSecure(scope.document());
345 PaymentOptions options; 339 PaymentOptions options;
346 options.setRequestPayerEmail(true); 340 options.setRequestPayerEmail(true);
347 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState()); 341 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState());
348 EXPECT_FALSE(scope.getExceptionState().hadException()); 342 EXPECT_FALSE(scope.getExceptionState().hadException());
349 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew(); 343 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew();
350 response->total_amount = mojom::blink::PaymentCurrencyAmount::New();
351 response->payer_email = "abc@gmail.com"; 344 response->payer_email = "abc@gmail.com";
352 ScriptValue outValue; 345 ScriptValue outValue;
353 request->show(scope.getScriptState()).then(PaymentResponseFunction::create(s cope.getScriptState(), &outValue), funcs.expectNoCall()); 346 request->show(scope.getScriptState()).then(PaymentResponseFunction::create(s cope.getScriptState(), &outValue), funcs.expectNoCall());
354 347
355 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response)); 348 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response));
356 349
357 v8::MicrotasksScope::PerformCheckpoint(scope.isolate()); 350 v8::MicrotasksScope::PerformCheckpoint(scope.isolate());
358 PaymentResponse* pr = V8PaymentResponse::toImplWithTypeCheck(scope.isolate() , outValue.v8Value()); 351 PaymentResponse* pr = V8PaymentResponse::toImplWithTypeCheck(scope.isolate() , outValue.v8Value());
359 EXPECT_EQ("abc@gmail.com", pr->payerEmail()); 352 EXPECT_EQ("abc@gmail.com", pr->payerEmail());
360 } 353 }
361 354
362 // If the merchant requests a phone number, the resolved show() promise should 355 // If the merchant requests a phone number, the resolved show() promise should
363 // contain a phone number. 356 // contain a phone number.
364 TEST(PaymentRequestTest, CanRequestPhone) 357 TEST(PaymentRequestTest, CanRequestPhone)
365 { 358 {
366 V8TestingScope scope; 359 V8TestingScope scope;
367 PaymentRequestMockFunctionScope funcs(scope.getScriptState()); 360 PaymentRequestMockFunctionScope funcs(scope.getScriptState());
368 makePaymentRequestOriginSecure(scope.document()); 361 makePaymentRequestOriginSecure(scope.document());
369 PaymentOptions options; 362 PaymentOptions options;
370 options.setRequestPayerPhone(true); 363 options.setRequestPayerPhone(true);
371 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState()); 364 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState());
372 EXPECT_FALSE(scope.getExceptionState().hadException()); 365 EXPECT_FALSE(scope.getExceptionState().hadException());
373 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew(); 366 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew();
374 response->total_amount = mojom::blink::PaymentCurrencyAmount::New();
375 response->payer_phone = "0123"; 367 response->payer_phone = "0123";
376 368
377 ScriptValue outValue; 369 ScriptValue outValue;
378 request->show(scope.getScriptState()).then(PaymentResponseFunction::create(s cope.getScriptState(), &outValue), funcs.expectNoCall()); 370 request->show(scope.getScriptState()).then(PaymentResponseFunction::create(s cope.getScriptState(), &outValue), funcs.expectNoCall());
379 371
380 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response)); 372 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response));
381 v8::MicrotasksScope::PerformCheckpoint(scope.isolate()); 373 v8::MicrotasksScope::PerformCheckpoint(scope.isolate());
382 PaymentResponse* pr = V8PaymentResponse::toImplWithTypeCheck(scope.isolate() , outValue.v8Value()); 374 PaymentResponse* pr = V8PaymentResponse::toImplWithTypeCheck(scope.isolate() , outValue.v8Value());
383 375
384 EXPECT_EQ("0123", pr->payerPhone()); 376 EXPECT_EQ("0123", pr->payerPhone());
(...skipping 26 matching lines...) Expand all
411 TEST(PaymentRequestTest, PhoneNotRequred) 403 TEST(PaymentRequestTest, PhoneNotRequred)
412 { 404 {
413 V8TestingScope scope; 405 V8TestingScope scope;
414 PaymentRequestMockFunctionScope funcs(scope.getScriptState()); 406 PaymentRequestMockFunctionScope funcs(scope.getScriptState());
415 makePaymentRequestOriginSecure(scope.document()); 407 makePaymentRequestOriginSecure(scope.document());
416 PaymentOptions options; 408 PaymentOptions options;
417 options.setRequestPayerPhone(false); 409 options.setRequestPayerPhone(false);
418 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState()); 410 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState());
419 EXPECT_FALSE(scope.getExceptionState().hadException()); 411 EXPECT_FALSE(scope.getExceptionState().hadException());
420 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew(); 412 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew();
421 response->total_amount = mojom::blink::PaymentCurrencyAmount::New();
422 response->payer_phone = String(); 413 response->payer_phone = String();
423 ScriptValue outValue; 414 ScriptValue outValue;
424 request->show(scope.getScriptState()).then(PaymentResponseFunction::create(s cope.getScriptState(), &outValue), funcs.expectNoCall()); 415 request->show(scope.getScriptState()).then(PaymentResponseFunction::create(s cope.getScriptState(), &outValue), funcs.expectNoCall());
425 416
426 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response)); 417 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response));
427 418
428 v8::MicrotasksScope::PerformCheckpoint(scope.isolate()); 419 v8::MicrotasksScope::PerformCheckpoint(scope.isolate());
429 PaymentResponse* pr = V8PaymentResponse::toImplWithTypeCheck(scope.isolate() , outValue.v8Value()); 420 PaymentResponse* pr = V8PaymentResponse::toImplWithTypeCheck(scope.isolate() , outValue.v8Value());
430 EXPECT_TRUE(pr->payerPhone().isNull()); 421 EXPECT_TRUE(pr->payerPhone().isNull());
431 } 422 }
432 423
433 // If the merchant does not request an email address, the resolved show() 424 // If the merchant does not request an email address, the resolved show()
434 // promise should contain null email address. 425 // promise should contain null email address.
435 TEST(PaymentRequestTest, EmailNotRequired) 426 TEST(PaymentRequestTest, EmailNotRequired)
436 { 427 {
437 V8TestingScope scope; 428 V8TestingScope scope;
438 PaymentRequestMockFunctionScope funcs(scope.getScriptState()); 429 PaymentRequestMockFunctionScope funcs(scope.getScriptState());
439 makePaymentRequestOriginSecure(scope.document()); 430 makePaymentRequestOriginSecure(scope.document());
440 PaymentOptions options; 431 PaymentOptions options;
441 options.setRequestPayerEmail(false); 432 options.setRequestPayerEmail(false);
442 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState()); 433 PaymentRequest* request = PaymentRequest::create(scope.getScriptState(), bui ldPaymentMethodDataForTest(), buildPaymentDetailsForTest(), options, scope.getEx ceptionState());
443 EXPECT_FALSE(scope.getExceptionState().hadException()); 434 EXPECT_FALSE(scope.getExceptionState().hadException());
444 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew(); 435 mojom::blink::PaymentResponsePtr response = mojom::blink::PaymentResponse::N ew();
445 response->total_amount = mojom::blink::PaymentCurrencyAmount::New();
446 response->payer_email = String(); 436 response->payer_email = String();
447 ScriptValue outValue; 437 ScriptValue outValue;
448 request->show(scope.getScriptState()).then(PaymentResponseFunction::create(s cope.getScriptState(), &outValue), funcs.expectNoCall()); 438 request->show(scope.getScriptState()).then(PaymentResponseFunction::create(s cope.getScriptState(), &outValue), funcs.expectNoCall());
449 439
450 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response)); 440 static_cast<mojom::blink::PaymentRequestClient*>(request)->OnPaymentResponse (std::move(response));
451 441
452 v8::MicrotasksScope::PerformCheckpoint(scope.isolate()); 442 v8::MicrotasksScope::PerformCheckpoint(scope.isolate());
453 PaymentResponse* pr = V8PaymentResponse::toImplWithTypeCheck(scope.isolate() , outValue.v8Value()); 443 PaymentResponse* pr = V8PaymentResponse::toImplWithTypeCheck(scope.isolate() , outValue.v8Value());
454 EXPECT_TRUE(pr->payerEmail().isNull()); 444 EXPECT_TRUE(pr->payerEmail().isNull());
455 } 445 }
456 446
457 } // namespace 447 } // namespace
458 } // namespace blink 448 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698