1// Copyright 2014 the V8 project authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4// 5// Flags: --harmony-object-observe 6 7var records; 8function observer(r) { 9 records = r; 10} 11 12Object.defineProperty(Array.prototype, '0', { 13 get: function() { return 0; }, 14 set: function() { throw "boom!"; } 15}); 16arr = [1, 2]; 17Array.observe(arr, observer); 18arr.length = 0; 19assertEquals(0, arr.length); 20 21Object.deliverChangeRecords(observer); 22assertEquals(1, records.length); 23assertEquals('splice', records[0].type); 24assertArrayEquals([1, 2], records[0].removed); 25