| <!DOCTYPE html> |
| <script src="../resources/testharness.js"></script> |
| <script src="../resources/testharnessreport.js"></script> |
| <script src="file:///gen/layout_test_data/mojo/public/js/mojo_bindings.js"></script> |
| <script src="file:///gen/third_party/blink/public/mojom/payments/payment_request.mojom.js"></script> |
| <script src="resources/payment-request-mock.js"></script> |
| <script> |
| var details = { |
| total: { |
| label: 'Total', |
| amount: {currency: 'USD', value: '55.00'}, // US$55.00 |
| } |
| }; |
| |
| var response_data = { |
| methodName: 'basic-card', |
| stringifiedDetails: '{}' |
| }; |
| |
| promise_test(async () => { |
| let result = new PaymentRequest([ |
| {'supportedMethods': ['basic-card']} |
| ], details).show(); |
| gc(); |
| |
| paymentRequestMock.onPaymentResponse(response_data); |
| let response = await result; |
| let completeResult = response.complete("success"); |
| |
| response = null; |
| gc(); |
| |
| paymentRequestMock.onComplete(); |
| return completeResult; |
| }, 'Promises resolve even without references to request or response.'); |
| </script> |