blob: a18c327a7c1695c3a3093d5afb8ded04e8feb2a6 [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="../../resources/js-test-pre.js"></script>
</head>
<body>
<script>
description("Test basic creation of an ApplePaySession object.");
window.jsTestIsAsync = true;
function validRequest() {
return {
countryCode: 'US',
currencyCode: 'USD',
supportedNetworks: ['visa', 'masterCard', 'carteBancaire'],
merchantCapabilities: ['supports3DS'],
total: { label: 'Your Label', amount: '10.00' },
}
}
function logAndShouldThrow(setup, test) {
debug("SETUP: " + setup)
eval(setup);
shouldThrow(test);
debug("")
}
function logAndShouldNotThrow(setup, test) {
debug("SETUP: " + setup)
eval(setup);
shouldNotThrow(test);
debug("")
}
function go() {
debug("Testing supportsVersion");
debug("");
shouldThrow("ApplePaySession.supportsVersion(0)");
shouldBeTrue("ApplePaySession.supportsVersion(1)");
shouldBeTrue("ApplePaySession.supportsVersion(2)");
shouldBeTrue("ApplePaySession.supportsVersion(3)");
shouldBeTrue("ApplePaySession.supportsVersion(4)");
debug("");
debug("Testing PaymentRequest (v4)")
debug("");
shouldThrow("new ApplePaySession(4, { })");
shouldNotThrow("new ApplePaySession(4, validRequest())");
debug("");
debug("Testing PaymentRequest.total")
debug("");
logAndShouldNotThrow("request = validRequest(); request.total = { label: 'label', amount: '0' };", "new ApplePaySession(4, request)")
debug("");
document.querySelector("button").remove();
finishJSTest();
}
function clickElement(element) {
let x = element.offsetLeft + 2;
let y = element.offsetTop + 2;
var supportsTouchEvents = "TouchEvent" in window;
if (supportsTouchEvents && window.testRunner && testRunner.runUIScript) {
testRunner.runUIScript(`(function() { uiController.singleTapAtPoint(${x}, ${y}, function() { }); })();`, function () { });
} else if (window.eventSender) {
eventSender.mouseMoveTo(x, y);
eventSender.mouseDown();
eventSender.mouseUp();
}
}
window.onload = function() {
clickElement(document.querySelector("button"));
}
</script>
<button onclick='go()'>Go</button>
<script src="../../resources/js-test-post.js"></script>
</body>
</html>