| <!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="/private-aggregation/resources/util.js"></script> |
| <script src="/fenced-frame/resources/utils.js"></script> |
| |
| <body> |
| <script> |
| 'use strict'; |
| |
| const paa_data = { |
| enableDebugMode: true, |
| contributions: [{bucket: 1n, value: 2}] |
| }; |
| |
| const cross_origin = 'https://{{domains[www]}}:{{ports[https][0]}}'; |
| |
| promise_test(async () => { |
| await VerifyContributeToHistogram(paa_data); |
| }, 'In a page with "private-aggregation=(self)" permissions policy, ' + |
| 'initialize the worklet via sharedStorage.worklet.addModule(), and then ' + |
| 'execute contributeToHistogram() inside the worklet'); |
| |
| promise_test(async () => { |
| await CreateWorkletAndVerifyContributeToHistogram( |
| /*shared_storage_origin=*/'', paa_data); |
| }, 'In a page with "private-aggregation=(self)" permissions policy, ' + |
| 'createWorklet() with same-origin script, and then execute ' + |
| 'contributeToHistogram() inside the worklet'); |
| |
| promise_test(async () => { |
| await CreateWorkletAndVerifyContributeToHistogram( |
| /*shared_storage_origin=*/cross_origin, paa_data, /*expected_error=*/true); |
| }, 'In a page with "private-aggregation=(self)" permissions policy, ' + |
| 'createWorklet() with cross-origin script and script data origin, and then ' |
| + 'execute contributeToHistogram() inside the worklet'); |
| |
| </script> |
| </body> |