0
Fork 0
mirror of https://github.com/withastro/astro.git synced 2024-12-23 21:53:55 -05:00
astro/packages/webapi/test/structuredclone.js
2022-03-07 21:37:50 +00:00

40 lines
712 B
JavaScript

import { assert, test } from '../run/test.setup.js'
import { polyfill } from '../mod.js'
test(() => {
return [
{
name: 'Includes structuredClone',
test() {
const target = {}
polyfill(target)
assert.equal(Reflect.has(target, 'structuredClone'), true)
assert.equal(typeof target.structuredClone, 'function')
},
},
{
name: 'Supports structuredClone usage',
test() {
const target = {}
polyfill(target)
const obj = {
foo: 'bar',
baz: {
qux: 'quux',
},
}
const clone = target.structuredClone(obj)
assert.notEqual(obj, clone)
assert.notEqual(obj.baz, clone.baz)
assert.equal(obj.baz.qux, clone.baz.qux)
},
},
]
})