| <!doctype html> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| |
| <body> |
| <script> |
| 'use strict'; |
| |
| promise_test(async t => { |
| return promise_rejects_js(t, TypeError, sharedStorage.set()); |
| }, 'sharedStorage.set with 0 argument'); |
| |
| promise_test(async t => { |
| return promise_rejects_js(t, TypeError, sharedStorage.set("a")); |
| }, 'sharedStorage.set with 1 argument'); |
| |
| promise_test(() => { |
| return sharedStorage.set("a", "b"); |
| }, 'sharedStorage.set with 2 arguments'); |
| |
| promise_test(() => { |
| return sharedStorage.set("a", "b", {ignoreIfPresent: true}); |
| }, 'sharedStorage.set with options'); |
| |
| promise_test(async t => { |
| return promise_rejects_js(t, TypeError, sharedStorage.set("a", "b", "c")); |
| }, 'sharedStorage.set with invalid options'); |
| |
| promise_test(() => { |
| return sharedStorage.set('a'.repeat(1024), 'b'.repeat(1024)); |
| }, 'sharedStorage.set with max allowed key and value length'); |
| |
| promise_test(async t => { |
| try { |
| await sharedStorage.set('', 'b'); |
| } catch (e) { |
| assert_equals(e.name, 'DataError'); |
| return; |
| } |
| assert_unreached("did not reject"); |
| }, 'sharedStorage.set with empty key'); |
| |
| promise_test(async t => { |
| try { |
| await sharedStorage.set('a'.repeat(1025), '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(1025)); |
| } catch (e) { |
| assert_equals(e.name, 'DataError'); |
| return; |
| } |
| assert_unreached("did not reject"); |
| }, 'sharedStorage.set with value length too big'); |
| |
| promise_test(() => { |
| return sharedStorage.append("a", "b"); |
| }, 'sharedStorage.append'); |
| |
| promise_test(() => { |
| return sharedStorage.clear(); |
| }, 'sharedStorage.clear'); |
| |
| promise_test(() => { |
| return sharedStorage.delete("a"); |
| }, 'sharedStorage.delete'); |
| |
| </script> |
| </body> |