| Index: third_party/WebKit/LayoutTests/payments/payment-request-interface.html
|
| diff --git a/third_party/WebKit/LayoutTests/payments/payment-request-interface.html b/third_party/WebKit/LayoutTests/payments/payment-request-interface.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..ebdc020c78510dc434e5224feb73f5dc642b4b3e
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/payments/payment-request-interface.html
|
| @@ -0,0 +1,63 @@
|
| +<!DOCTYPE html>
|
| +<meta charset="utf-8">
|
| +<title>Tests for PaymentRequest interface</title>
|
| +<script src="../resources/testharness.js"></script>
|
| +<script src="../resources/testharnessreport.js"></script>
|
| +<script>
|
| +test(function() {
|
| + new PaymentRequest([], {}, {}, {});
|
| +}, 'Creating a PaymentRequest with empty parameters should not throw or crash.');
|
| +
|
| +test(function() {
|
| + new PaymentRequest([], {}, {}, {}, '');
|
| +}, 'Creating a PaymentRequest with extra parameters should not throw or crash.');
|
| +
|
| +test(function() {
|
| + new PaymentRequest([], {});
|
| +}, 'Creating a PaymentRequest with omitted optional parameters should not throw or crash.');
|
| +
|
| +test(function() {
|
| + new PaymentRequest([], {}, undefined, undefined);
|
| +}, 'Creating a PaymentRequest with undefined optional parameters should not throw or crash.');
|
| +
|
| +test(function() {
|
| + new PaymentRequest([], {}, null, null);
|
| +}, 'Creating a PaymentRequest with null optional parameters should not throw or crash.');
|
| +
|
| +generate_tests(assert_throws, [
|
| + ['PaymentRequest constructor should throw for incorrect parameter types.', null, function() {
|
| + new PaymentRequest('', '', '', '')
|
| + }],
|
| + ['PaymentRequest constructor should throw for undefined required parameters.', null, function() {
|
| + new PaymentRequest(undefined, undefined)
|
| + }],
|
| + ['PaymentRequest constructor should throw for null required parameter.', null, function() {
|
| + new PaymentRequest(null, null)
|
| + }]
|
| +]);
|
| +
|
| +test(function() {
|
| + var request = new PaymentRequest([], {});
|
| + assert_readonly(request, "shippingAddress", 'PaymentRequest should have a readonly shippingAddress property.');
|
| + assert_readonly(request, "shippingOption", 'PaymentRequest should have a readonly shippingOption property.');
|
| +}, 'PaymentRequest should have readonly shippingAddress and shippingOption properties.');
|
| +
|
| +test(function() {
|
| + var request = new PaymentRequest([], {});
|
| + assert_not_equals(request.onshippingaddresschange, undefined, 'PaymentRequest should have onShippingAddressChange event.');
|
| + assert_not_equals(request.onshippingoptionchange, undefined, 'PaymentRequest should have onShippingOptionChange event.');
|
| +}, 'PaymentRequest should have onShippingAddressChange and onShippingOptionChange events.');
|
| +
|
| +
|
| +test(function() {
|
| + var request = new PaymentRequest([], {});
|
| + assert_not_equals(request.abort, undefined, 'PaymentRequest should have abort() method.');
|
| + assert_not_equals(request.show, undefined, 'PaymentRequest should have show() method.');
|
| +}, 'PaymentRequest should have methods abort() and show().');
|
| +
|
| +test(function() {
|
| + var request = new PaymentRequest([], {});
|
| + request.abort();
|
| + request.show();
|
| +}, 'PaymentRequest.abort() and PaymentRequest.show() should take no parameters.');
|
| +</script>
|
|
|