Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

// META: title=IndexedDB: large nested objects are cloned correctly
// META: global=window,worker
// META: script=resources/support-promises.js
// META: script=resources/nested-cloning-common.js
// META: timeout=long
'use strict';
cloningTest('large typed array', [
{type: 'buffer', size: wrapThreshold, seed: 1},
// This test uses non-random data to test that compression doesn't
// break functionality.
{type: 'buffer', size: wrapThreshold, seed: 0},
])
cloningTestWithKeyGenerator('blob with large typed array', [
{
blob: {
type: 'blob',
size: wrapThreshold,
mimeType: 'text/x-blink-01',
seed: 1
},
buffer: {type: 'buffer', size: wrapThreshold, seed: 2},
},
]);
cloningTestWithKeyGenerator('array of blobs and large typed arrays', [
[
{type: 'blob', size: wrapThreshold, mimeType: 'text/x-blink-01', seed: 1},
{type: 'buffer', size: wrapThreshold, seed: 2},
{type: 'blob', size: wrapThreshold, mimeType: 'text/x-blink-03', seed: 3},
{type: 'buffer', size: wrapThreshold, seed: 4},
{type: 'blob', size: wrapThreshold, mimeType: 'text/x-blink-05', seed: 5},
],
]);
cloningTestWithKeyGenerator('object with blobs and large typed arrays', [
{
blob:
{type: 'blob', size: wrapThreshold, mimeType: 'text/x-blink1', seed: 1},
more: [
{type: 'buffer', size: wrapThreshold, seed: 2},
{type: 'blob', size: wrapThreshold, mimeType: 'text/x-blink3', seed: 3},
{type: 'buffer', size: wrapThreshold, seed: 4},
],
blob2:
{type: 'blob', size: wrapThreshold, mimeType: 'text/x-blink5', seed: 5},
},
]);