1// META: global=window,worker
2// META: script=/common/sab.js
3
4["ArrayBuffer", "SharedArrayBuffer"].forEach(arrayBufferOrSharedArrayBuffer => {
5  test(() => {
6    const buf = createBuffer(arrayBufferOrSharedArrayBuffer, 2);
7    const view = new Uint8Array(buf);
8    const buf2 = createBuffer(arrayBufferOrSharedArrayBuffer, 2);
9    const view2 = new Uint8Array(buf2);
10    const decoder = new TextDecoder("utf-8");
11    view[0] = 0xEF;
12    view[1] = 0xBB;
13    view2[0] = 0xBF;
14    view2[1] = 0x40;
15    assert_equals(decoder.decode(buf, {stream:true}), "");
16    view[0] = 0x01;
17    view[1] = 0x02;
18    assert_equals(decoder.decode(buf2), "@");
19  }, "Modify buffer after passing it in (" + arrayBufferOrSharedArrayBuffer  + ")");
20});
21