2011-09-07 08:35:18 +02:00
|
|
|
// Copyright 2009 the Sputnik authors. All rights reserved.
|
|
|
|
// This code is governed by the BSD license found in the LICENSE file.
|
|
|
|
|
2014-07-22 01:09:02 +02:00
|
|
|
/*---
|
|
|
|
info: the length property has the attributes { DontEnum }
|
2014-07-25 00:41:42 +02:00
|
|
|
es5id: 15.3.5.1_A4_T3
|
2014-07-22 01:09:02 +02:00
|
|
|
description: >
|
|
|
|
Checking if enumerating the length property of
|
|
|
|
Function("arg1,arg2,arg3","arg1,arg2","arg3", null) fails
|
|
|
|
---*/
|
2011-09-07 08:35:18 +02:00
|
|
|
|
2018-02-15 21:49:19 +01:00
|
|
|
var f = new Function("arg1,arg2,arg3", "arg1,arg2", "arg3", null);
|
2011-09-07 08:35:18 +02:00
|
|
|
|
|
|
|
//CHECK#1
|
|
|
|
if (!(f.hasOwnProperty('length'))) {
|
2015-06-09 18:08:02 +02:00
|
|
|
$ERROR('#1: the function has length property.');
|
2011-09-07 08:35:18 +02:00
|
|
|
}
|
|
|
|
|
2018-02-15 21:49:19 +01:00
|
|
|
for (var key in f) {
|
|
|
|
if (key == "length") {
|
|
|
|
var lengthenumed = true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2011-09-07 08:35:18 +02:00
|
|
|
//CHECK#2
|
|
|
|
if (lengthenumed) {
|
|
|
|
$ERROR('#2: the length property has the attributes { DontEnum }');
|
|
|
|
}
|