summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/shared-storage/setters-long-string.tentative.https.sub.html
blob: 69b66a53a0d0655abb0d0f13273a9091ba301014 (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
36
37
38
39
40
41
42
43
44
<!doctype html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>

<body>
<script>
'use strict';

promise_test(async t => {
  try {
    await sharedStorage.set('a'.repeat(2621441), 'b');
  } catch (e) {
    assert_equals(e.name, 'DataError');
    return;
  }
  assert_unreached("did not reject");
}, 'sharedStorage.set with key length too big');

promise_test(async t => {
  try {
    await sharedStorage.set('a', 'b'.repeat(2621441));
  } catch (e) {
    assert_equals(e.name, 'DataError');
    return;
  }
  assert_unreached("did not reject");
}, 'sharedStorage.set with value length too big');

promise_test(() => {
  return sharedStorage.set('a'.repeat(2621440), '').then(() => {
    // Clean up.
    sharedStorage.delete('a'.repeat(2621440));
  });
}, 'sharedStorage.set with max allowed key length');

promise_test(() => {
  return sharedStorage.set('a', 'b'.repeat(2621439)).then(() => {
    // Clean up.
    sharedStorage.delete('a');
  });
}, 'sharedStorage.set with max allowed value length');

</script>
</body>