michael@0: // Copyright 2009 the Sputnik authors. All rights reserved. michael@0: // This code is governed by the BSD license found in the LICENSE file. michael@0: michael@0: /** michael@0: * The initial value of the created property length is the number michael@0: * of actual parameter values supplied by the caller michael@0: * michael@0: * @path ch10/10.6/S10.6_A6.js michael@0: * @description Create function, that returned arguments.length michael@0: */ michael@0: michael@0: function f1(){ michael@0: return arguments.length; michael@0: } michael@0: michael@0: //CHECK#1 michael@0: if(!(f1() === 0)){ michael@0: $ERROR('#1: argument.length === 0'); michael@0: } michael@0: michael@0: //CHECK#2 michael@0: if(!(f1(0) === 1)){ michael@0: $ERROR('#2: argument.length === 1'); michael@0: } michael@0: michael@0: //CHECK#3 michael@0: if(!(f1(0, 1) === 2)){ michael@0: $ERROR('#3: argument.length === 2'); michael@0: } michael@0: michael@0: //CHECK#4 michael@0: if(!(f1(0, 1, 2) === 3)){ michael@0: $ERROR('#4: argument.length === 3'); michael@0: } michael@0: michael@0: //CHECK#5 michael@0: if(!(f1(0, 1, 2, 3) === 4)){ michael@0: $ERROR('#5: argument.length === 4'); michael@0: } michael@0: michael@0: var f2 = function(){return arguments.length;}; michael@0: michael@0: //CHECK#6 michael@0: if(!(f2() === 0)){ michael@0: $ERROR('#6: argument.length === 0'); michael@0: } michael@0: michael@0: //CHECK#7 michael@0: if(!(f2(0) === 1)){ michael@0: $ERROR('#7: argument.length === 1'); michael@0: } michael@0: michael@0: //CHECK#8 michael@0: if(!(f2(0, 1) === 2)){ michael@0: $ERROR('#8: argument.length === 2'); michael@0: } michael@0: michael@0: //CHECK#9 michael@0: if(!(f2(0, 1, 2) === 3)){ michael@0: $ERROR('#9: argument.length === 3'); michael@0: } michael@0: michael@0: //CHECK#10 michael@0: if(!(f2(0, 1, 2, 3) === 4)){ michael@0: $ERROR('#10: argument.length === 4'); michael@0: } michael@0: