can-make-payment-event-constructor.https.serviceworker.js (1649B)
1 importScripts('/resources/testharness.js'); 2 3 test(() => { 4 try { 5 new CanMakePaymentEvent('test', undefined); 6 new CanMakePaymentEvent('test', null); 7 new CanMakePaymentEvent('test', {}); 8 } catch (err) { 9 assert_unreached(`Unexpected exception: ${err.message}`); 10 } 11 }, 'CanMakePaymentEvent can be constructed in service worker.'); 12 13 test(() => { 14 const ev = new CanMakePaymentEvent('test', { 15 bubbles: true, 16 cancelable: true, 17 composed: true, 18 }); 19 assert_false(ev.isTrusted, 'constructed in script, so not be trusted'); 20 assert_true(ev.bubbles, 'set by EventInitDict'); 21 assert_true(ev.cancelable, 'set by EventInitDict'); 22 assert_true(ev.composed, 'set by EventInitDict'); 23 assert_equals(ev.target, null, 'initially null'); 24 assert_equals(ev.type, 'test'); 25 }, 'CanMakePaymentEvent can be constructed with an EventInitDict, even if not trusted'); 26 27 test(() => { 28 const ev = new CanMakePaymentEvent('test', { 29 topOrigin: 'https://foo.com', 30 paymentRequestOrigin: 'https://bar.com', 31 methodData: [], 32 modifiers: [], 33 }); 34 assert_false(ev.isTrusted, 'constructed in script, so not be trusted'); 35 assert_equals(ev.topOrigin, undefined); 36 assert_equals(ev.paymentRequestOrigin, undefined); 37 assert_equals(ev.methodData, undefined); 38 assert_equals(ev.modifiers, undefined); 39 }, 'CanMakePaymentEvent can be constructed with a CanMakePaymentEventInit, even if not trusted'); 40 41 test(() => { 42 const ev = new CanMakePaymentEvent('test', {}); 43 self.addEventListener('test', evt => { 44 assert_equals(ev, evt); 45 }); 46 self.dispatchEvent(ev); 47 }, 'CanMakePaymentEvent can be dispatched, even if not trusted');