diff options
author | 2022-03-07 15:36:22 -0600 | |
---|---|---|
committer | 2022-03-07 15:36:22 -0600 | |
commit | f18ee36dc0abdc5c8ec87734de7962966d16fe65 (patch) | |
tree | c01a7034186cb0bbe5e1d042f4a5dd09bad21ed5 /packages/webapi/test/storage.js | |
parent | 10a9c3412b4f6e8607687a74eafdb150d3222047 (diff) | |
download | astro-f18ee36dc0abdc5c8ec87734de7962966d16fe65.tar.gz astro-f18ee36dc0abdc5c8ec87734de7962966d16fe65.tar.zst astro-f18ee36dc0abdc5c8ec87734de7962966d16fe65.zip |
Add `@astrojs/webapi` package (#2729)@astrojs/webapi@0.11.0
* chore: add @astrojs/webapi
* chore: update package.json
* fix: update file case
* fix: remove lowercase file
* chore: update tests to use mocha
* chore: update LICENSE
Diffstat (limited to 'packages/webapi/test/storage.js')
-rw-r--r-- | packages/webapi/test/storage.js | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/packages/webapi/test/storage.js b/packages/webapi/test/storage.js new file mode 100644 index 000000000..b8a6d2354 --- /dev/null +++ b/packages/webapi/test/storage.js @@ -0,0 +1,45 @@ +import { assert, test } from '../run/test.setup.js' +import { polyfill } from '../mod.js' + +test(() => { + return [ + { + name: 'Includes Storage functionality', + test() { + const target = {} + + polyfill(target) + + assert.equal(Reflect.has(target, 'Storage'), true) + assert.equal(Reflect.has(target, 'localStorage'), true) + assert.equal(typeof target.Storage, 'function') + assert.equal(typeof target.localStorage, 'object') + }, + }, + { + name: 'Supports Storage methods', + test() { + const target = {} + + polyfill(target) + + assert.equal(target.localStorage.setItem('hello', 'world'), undefined) + assert.equal(target.localStorage.getItem('hello'), 'world') + assert.equal(target.localStorage.key(0), 'hello') + assert.equal(target.localStorage.key(1), null) + assert.equal(target.localStorage.length, 1) + assert.equal(target.localStorage.setItem('world', 'hello'), undefined) + assert.equal(target.localStorage.key(1), 'world') + assert.equal(target.localStorage.key(2), null) + assert.equal(target.localStorage.length, 2) + assert.equal(target.localStorage.removeItem('hello'), undefined) + assert.equal(target.localStorage.key(0), 'world') + assert.equal(target.localStorage.key(1), null) + assert.equal(target.localStorage.length, 1) + assert.equal(target.localStorage.clear(), undefined) + assert.equal(target.localStorage.key(0), null) + assert.equal(target.localStorage.length, 0) + }, + }, + ] +}) |