Files
firefox/testing/web-platform/tests/shared-storage/interest-groups.tentative.https.sub.html
Yao Xiao d0954250cd Bug 1925059 [wpt PR 48650] - [shared storage] Implement interestGroup(), a=testonly
Automatic update from web-platform-tests
[shared storage] Implement interestGroup()

Add interestGroups() to the shared storage worklet, to return the
Protected Audience interest groups associated with the
shared storage origin's owner, with some additional metadata.

Implement this behind a runtime feature, which is implicitly
controlled by a Finch flag.

Explainer PR: https://github.com/WICG/shared-storage/pull/180

Spec PR(s):
1) https://github.com/WICG/turtledove/pull/1299
2) https://github.com/WICG/shared-storage/pull/203

Bug: 367992703
Binary-Size: Size increase is unavoidable.
Fuchsia-Binary-Size: Size increase is unavoidable.
Change-Id: I5fc5767fa53a91f021d64a871a6dd9cb88f4431c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5696046
Reviewed-by: Daniel Cheng <[email protected]>
Commit-Queue: Yao Xiao <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1369483}

--

wpt-commits: eb87bbbacf996ab46607538a72ea0adaee229e7a
wpt-pr: 48650
2024-10-18 08:39:15 +00:00

42 lines
1.4 KiB
HTML

<!doctype html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/utils.js"></script>
<script src="/shared-storage/resources/util.js"></script>
<script src="/fenced-frame/resources/utils.js"></script>
<body>
<script>
'use strict';
promise_test(async t => {
const ig = {
owner: window.location.origin,
name: 'default name',
lifetimeMs: 100000
};
await navigator.joinAdInterestGroup(ig);
await sharedStorage.worklet.addModule('resources/simple-module.js');
const ancestor_key = token();
let url0 = generateURL("/shared-storage/resources/frame0.html",
[ancestor_key]);
let url1 = generateURL("/shared-storage/resources/frame1.html",
[ancestor_key]);
let select_url_result = await sharedStorage.selectURL(
"verify-interest-groups", [{url: url0}, {url: url1}],
{data: {'expectedOwner': ig.owner, 'expectedName': ig.name},
resolveToConfig: true});
assert_true(validateSelectURLResult(select_url_result, true));
attachFencedFrame(select_url_result, 'opaque-ads');
const result = await nextValueFromServer(ancestor_key);
// This indicates that `interestGroups()` returns expected result.
assert_equals(result, "frame1_loaded");
}, 'Basic test for `interestGroups()` in the shared storage worklet');
</script>
</body>