diff options
Diffstat (limited to 'testing/web-platform/tests/parakeet/finalizeAd.tentative.https.sub.window.js')
-rw-r--r-- | testing/web-platform/tests/parakeet/finalizeAd.tentative.https.sub.window.js | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/testing/web-platform/tests/parakeet/finalizeAd.tentative.https.sub.window.js b/testing/web-platform/tests/parakeet/finalizeAd.tentative.https.sub.window.js new file mode 100644 index 0000000000..e8bf6753f0 --- /dev/null +++ b/testing/web-platform/tests/parakeet/finalizeAd.tentative.https.sub.window.js @@ -0,0 +1,39 @@ +// META: script=/resources/testdriver.js +// META: script=/resources/testdriver-vendor.js +'use strict'; + +const okayAuctionRequest = { + seller: "https://{{host}}:{{ports[https][0]}}", + decisionLogicUrl: "https://{{host}}:{{ports[https][0]}}", + perBuyerSignals: {"{{host}}": { randomParam: "value1" }}, + auctionSignals: "pubCode123", + sellerSignals: { someKey: "sellerValue" } +}; + +test(() => { + assert_not_equals(navigator.finalizeAd, undefined); +}, "finalizeAd() should be supported on the navigator interface."); + +promise_test(async t => { + const finalizePromise = navigator.finalizeAd({}, okayAuctionRequest); + + await promise_rejects_js(t, TypeError, finalizePromise); +}, "finalizeAd() should reject an invalid Ads object."); + +promise_test(async t => { + const auctionRequest = Object.assign({}, okayAuctionRequest); + delete auctionRequest.decisionLogicUrl; + + const finalizePromise = navigator.finalizeAd({}, auctionRequest); + + await promise_rejects_js(t, TypeError, finalizePromise); +}, "finalizeAd() should reject a missing decisionLogicUrl."); + +promise_test(async t => { + const auctionRequest = Object.assign({}, okayAuctionRequest); + auctionRequest.decisionLogicUrl = "http://{{host}}:{{ports[https][0]}}"; + + const finalizePromise = navigator.finalizeAd({}, auctionRequest); + + await promise_rejects_js(t, TypeError, finalizePromise); +}, "finalizeAd() should reject a non-HTTPS decisionLogicUrl.");
\ No newline at end of file |