non-shared-int-views-throws.js (753B)
1 // |reftest| skip-if(!this.hasOwnProperty('Atomics')) -- Atomics is not enabled unconditionally 2 // Copyright (C) 2020 Rick Waldron. All rights reserved. 3 // This code is governed by the BSD license found in the LICENSE file. 4 5 /*--- 6 esid: sec-atomics.exchange 7 description: > 8 Atomics.exchange throws when operating on non-sharable integer TypedArrays 9 includes: [testTypedArray.js] 10 features: [ArrayBuffer, Atomics, TypedArray] 11 ---*/ 12 testWithNonAtomicsFriendlyTypedArrayConstructors(TA => { 13 const buffer = new ArrayBuffer(TA.BYTES_PER_ELEMENT * 4); 14 const view = new TA(buffer); 15 assert.throws(TypeError, function() { 16 Atomics.exchange(view, 0, 1); 17 }, `Atomics.exchange(new ${TA.name}(buffer), 0, 1) throws TypeError`); 18 }); 19 20 reportCompare(0, 0);