From 30c280a1f943b90305365e81e66793bef5a033e5 Mon Sep 17 00:00:00 2001 From: Leonardo Balter <leonardo.balter@gmail.com> Date: Wed, 15 Mar 2017 15:02:41 -0400 Subject: [PATCH] Add case for obj rest name equal to a property Fixes #913 --- .../obj-rest-obj-own-property.case | 1 - src/dstr-assignment/obj-rest-same-name.case | 32 +++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 src/dstr-assignment/obj-rest-same-name.case diff --git a/src/dstr-assignment/obj-rest-obj-own-property.case b/src/dstr-assignment/obj-rest-obj-own-property.case index 89764cf69a..db29e0741c 100644 --- a/src/dstr-assignment/obj-rest-obj-own-property.case +++ b/src/dstr-assignment/obj-rest-obj-own-property.case @@ -6,7 +6,6 @@ desc: > Rest object contains just source object's own properties template: default esid: pending -includes: [propertyHelper.js] ---*/ //- setup diff --git a/src/dstr-assignment/obj-rest-same-name.case b/src/dstr-assignment/obj-rest-same-name.case new file mode 100644 index 0000000000..2616f66eb6 --- /dev/null +++ b/src/dstr-assignment/obj-rest-same-name.case @@ -0,0 +1,32 @@ +// Copyright (C) 2017 the V8 project authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +desc: > + Proper setting in the values for rest name equal to a property name. +template: default +esid: pending +---*/ + +//- setup +var o = { + x: 42, + y: 39, + z: 'cheeseburger' +}; + +var x, y, z; +//- elems +{ x, ...z } +//- vals +o +//- body +assert.sameValue(x, 42); +assert.sameValue(y, undefined); +assert.sameValue(z.y, 39); +assert.sameValue(z.z, 'cheeseburger'); + +var keys = Object.keys(z); +assert.sameValue(keys.length, 2); +assert.sameValue(keys[0], 'y'); +assert.sameValue(keys[1], 'z'); -- GitLab