summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/shared-storage/run-operation.tentative.https.sub.html
blob: 1ef0d25b48f152815046b38a6ba821a8a83e5ce9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<!doctype html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/shared-storage/resources/util.js"></script>

<body>
<script>
'use strict';

promise_test(async t => {
  await addModuleOnce("/shared-storage/resources/simple-module.js");
  return sharedStorage.run("operation1", {keepAlive: true});
}, 'run()');

promise_test(async t => {
  await addModuleOnce("/shared-storage/resources/simple-module.js");
  return sharedStorage.run("operation1",
                           {data: {'custom-key': 'custom-value'},
                            keepAlive: true});
}, 'run() with custom data');

promise_test(async t => {
  try {
    await addModuleOnce("/shared-storage/resources/simple-module.js");
    await sharedStorage.run("operation1", {data: window});
  } catch (e) {
    assert_equals(e.name, 'DataCloneError');
    assert_equals(e.message, 'Failed to execute \'run\' on \'SharedStorage\': #<Window> could not be cloned.');
    return;
  }
  assert_unreached("did not reject");
}, 'run() with unsupported serializable type');

</script>
</body>