summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/fledge/tentative/round-a-value.https.window.js
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
commit26a029d407be480d791972afb5975cf62c9360a6 (patch)
treef435a8308119effd964b339f76abb83a57c29483 /testing/web-platform/tests/fledge/tentative/round-a-value.https.window.js
parentInitial commit. (diff)
downloadfirefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz
firefox-26a029d407be480d791972afb5975cf62c9360a6.zip
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/fledge/tentative/round-a-value.https.window.js')
-rw-r--r--testing/web-platform/tests/fledge/tentative/round-a-value.https.window.js161
1 files changed, 161 insertions, 0 deletions
diff --git a/testing/web-platform/tests/fledge/tentative/round-a-value.https.window.js b/testing/web-platform/tests/fledge/tentative/round-a-value.https.window.js
new file mode 100644
index 0000000000..5bccd4ab07
--- /dev/null
+++ b/testing/web-platform/tests/fledge/tentative/round-a-value.https.window.js
@@ -0,0 +1,161 @@
+// META: script=/resources/testdriver.js
+// META: script=/common/utils.js
+// META: script=resources/fledge-util.sub.js
+// META: timeout=long
+
+"use strict;"
+
+promise_test(async test => {
+ const uuid = generateUuid(test);
+ await runReportTest(
+ test, uuid,
+ { generateBid:
+ `return {'adCost': 1.99,
+ 'bid': 9,
+ 'render': interestGroup.ads[0].renderURL};`,
+ reportWinSuccessCondition:
+ // Possible stochastic rounding results for 1.99
+ `browserSignals.adCost === 1.9921875 || browserSignals.adCost === 1.984375`,
+ reportWin:
+ `sendReportTo('${createBidderReportURL(uuid)}');` },
+ // expectedReportUrls
+ [createBidderReportURL(uuid)]
+ );
+}, 'Check adCost is stochastically rounded with 8 bit mantissa and exponent.');
+
+promise_test(async test => {
+ const uuid = generateUuid(test);
+ await runReportTest(
+ test, uuid,
+ { generateBid:
+ `return {'bid': 1.99,
+ 'render': interestGroup.ads[0].renderURL};`,
+ reportWinSuccessCondition:
+ // Possible stochastic rounding results for 1.99
+ `browserSignals.bid === 1.9921875 || browserSignals.bid === 1.984375`,
+ reportWin:
+ `sendReportTo('${createBidderReportURL(uuid)}');` },
+ // expectedReportUrls
+ [createBidderReportURL(uuid)]
+ );
+}, 'Check bid is stochastically rounded with 8 bit mantissa and exponent.');
+
+promise_test(async test => {
+ const uuid = generateUuid(test);
+ await runReportTest(
+ test, uuid,
+ { scoreAd:
+ `return {desirability: 1.99,
+ allowComponentAuction: false}`,
+ reportResultSuccessCondition:
+ // Possible stochastic rounding results for 1.99
+ `browserSignals.desirability === 1.9921875 || browserSignals.desirability === 1.984375`,
+ reportResult:
+ `sendReportTo('${createBidderReportURL(uuid)}');` },
+ // expectedReportUrls
+ [createBidderReportURL(uuid)]
+ );
+}, 'Check desirability is stochastically rounded with 8 bit mantissa and exponent.');
+
+promise_test(async test => {
+ const uuid = generateUuid(test);
+ await joinInterestGroup(test, uuid,
+ {
+ biddingLogicURL: createBiddingScriptURL({ bid: 1.99 }),
+ name: 'other interest group 1' });
+ await runReportTest(
+ test, uuid,
+ { reportResultSuccessCondition:
+ // Possible stochastic rounding results for 1.99
+ `browserSignals.highestScoringOtherBid === 1.9921875 || browserSignals.highestScoringOtherBid === 1.984375`,
+ reportResult:
+ `sendReportTo('${createBidderReportURL(uuid)}');` },
+ // expectedReportUrls
+ [createBidderReportURL(uuid)]
+ );
+}, 'Check highestScoringOtherBid is stochastically rounded with 8 bit mantissa and exponent.');
+
+promise_test(async test => {
+ const uuid = generateUuid(test);
+ await runReportTest(
+ test, uuid,
+ { generateBid:
+ `return {'adCost': 2,
+ 'bid': 9,
+ 'render': interestGroup.ads[0].renderURL};`,
+ reportWinSuccessCondition:
+ `browserSignals.adCost === 2`,
+ reportWin:
+ `sendReportTo('${createBidderReportURL(uuid)}');` },
+ // expectedReportUrls
+ [createBidderReportURL(uuid)]
+ );
+}, 'Value is ignored as a non-valid floating-point number.');
+
+promise_test(async test => {
+ const uuid = generateUuid(test);
+ await runReportTest(
+ test, uuid,
+ { generateBid:
+ `return {'adCost': 1E-46,
+ 'bid': 9,
+ 'render': interestGroup.ads[0].renderURL};`,
+ reportWinSuccessCondition:
+ `browserSignals.adCost === 0`,
+ reportWin:
+ `sendReportTo('${createBidderReportURL(uuid)}');` },
+ // expectedReportUrls
+ [createBidderReportURL(uuid)]
+ );
+}, 'Value is rounded to 0 if value is greater than 0 and its exponent is less than -128.');
+
+promise_test(async test => {
+ const uuid = generateUuid(test);
+ await runReportTest(
+ test, uuid,
+ { generateBid:
+ `return {'adCost': -1E-46,
+ 'bid': 9,
+ 'render': interestGroup.ads[0].renderURL};`,
+ reportWinSuccessCondition:
+ `browserSignals.adCost === -0`,
+ reportWin:
+ `sendReportTo('${createBidderReportURL(uuid)}');` },
+ // expectedReportUrls
+ [createBidderReportURL(uuid)]
+ );
+}, 'Value is rounded to -0 if value is greater than 0 and its exponent is less than -128.');
+
+promise_test(async test => {
+ const uuid = generateUuid(test);
+ await runReportTest(
+ test, uuid,
+ { generateBid:
+ `return {'adCost': 1E+39,
+ 'bid': 9,
+ 'render': interestGroup.ads[0].renderURL};`,
+ reportWinSuccessCondition:
+ `browserSignals.adCost === Infinity`,
+ reportWin:
+ `sendReportTo('${createBidderReportURL(uuid)}');` },
+ // expectedReportUrls
+ [createBidderReportURL(uuid)]
+ );
+}, 'Value is rounded to Infinity if value is greater than 0 and its exponent is greater than 127.');
+
+promise_test(async test => {
+ const uuid = generateUuid(test);
+ await runReportTest(
+ test, uuid,
+ { generateBid:
+ `return {'adCost': -1E+39,
+ 'bid': 9,
+ 'render': interestGroup.ads[0].renderURL};`,
+ reportWinSuccessCondition:
+ `browserSignals.adCost === -Infinity`,
+ reportWin:
+ `sendReportTo('${createBidderReportURL(uuid)}');` },
+ // expectedReportUrls
+ [createBidderReportURL(uuid)]
+ );
+}, 'Value is rounded to -Infinity if value is less than 0 and its exponent is greater than 127.');