| <!DOCTYPE html> |
| <title>Test Payment Rrequest API</title> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="/resources/testdriver.js"></script> |
| <script src="/resources/testdriver-vendor.js"></script> |
| <script src="/common/utils.js"></script> |
| <script src="/common/dispatcher/dispatcher.js"></script> |
| <script src="resources/utils.js"></script> |
| |
| <body> |
| <script> |
| promise_test(async () => { |
| const frame = attachFencedFrameContext(); |
| const error_name = await frame.execute(() => { |
| const methods = [{supportedMethods: ['foo']}]; |
| const details = { |
| total: { |
| label: 'label', |
| amount: { |
| currency: 'USD', |
| value: '5.00' |
| } |
| } |
| }; |
| |
| try { |
| new PaymentRequest(methods, details); |
| } catch (e) { |
| return e.name |
| } |
| }); |
| assert_equals(error_name, "SecurityError", |
| "PaymentRequest is not allowed in fenced frames"); |
| }, 'new PaymentRequest should fail inside a fenced frame'); |
| </script> |
| </body> |