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 production FunctionDeclaration: "function Identifier ( FormalParameterList_opt ) { FunctionBody }" is processed by function declarations michael@0: * michael@0: * @path ch13/13.0/S13_A4_T4.js michael@0: * @description Declaring a function that uses strings concatenaion opeator within its "return" Expression michael@0: */ michael@0: michael@0: function __func(){return arguments[0].name + " " + arguments[0].surname;}; michael@0: michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: //CHECK#1 michael@0: if (typeof __func !== "function") { michael@0: $ERROR('#1: typeof __func === "function". Actual: typeof __func ==='+typeof __func); michael@0: } michael@0: // michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: //CHECK#2 michael@0: if (__func({name:'fox', surname:'malder'}) !== "fox malder") { michael@0: $ERROR('#2: __func({name:\'fox\', surname:\'malder\'}) === "fox malder". Actual: __func({name:\'fox\', surname:\'malder\'}) ==='+__func({name:'fox', surname:'malder'})); michael@0: } michael@0: // michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: michael@0: function func__(arg){return arg.name + " " + arg.surname;}; michael@0: michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: //CHECK#3 michael@0: if (typeof func__ !== "function") { michael@0: $ERROR('#3: typeof func__ === "function". Actual: typeof __func ==='+typeof __func); michael@0: } michael@0: // michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: //CHECK#4 michael@0: if (func__({name:'john', surname:'lennon'}) !== "john lennon") { michael@0: $ERROR('#4: func__({name:\'john\', surname:\'lennon\'}) === "john lennon". Actual: __func({name:\'john\', surname:\'lennon\'}) ==='+__func({name:'john', surname:'lennon'})); michael@0: } michael@0: // michael@0: ////////////////////////////////////////////////////////////////////////////// michael@0: