<!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>
