David Fugate 7396642963 This commit includes Microsoft's initial contributions to Test262:
- external\contributions\: test contributions to Test262 from external entities such as Microsoft and Google.
                           This directory consists of the external tests without any modifications
- test\harness\:  test harness used to run Test262 tests.  Presently web-based
- test\suite\:    suite of vendor-neutral ECMAScript test cases conforming to the ES5 spec
- tools\:         among other things this includes a set of tools used to convert various external test
                  contributions to a format the Test262 test harness can consume
- website\:       an archived copy of the http://test262.ecmascript.org website
2010-10-18 20:50:07 -07:00

46 lines
1.2 KiB
JavaScript

// Copyright 2009 the Sputnik authors. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/**
* @name: S14_A2;
* @section: 14;
* @assertion: FunctionDeclaration cannot be localed inside an Expression;
* @description: Declaring a function within an "if" Expression;
*/
// Converted for Test262 from original Sputnik source
ES5Harness.registerTest( {
id: "S14_A2",
path: "14",
description: "Declaring a function within an \"if\" Expression",
test: function testcase() {
//////////////////////////////////////////////////////////////////////////////
//CHECK#1
if (typeof f !== 'undefined') {
$ERROR('#1: typeof f === \'undefined\'. Actual: typeof f ==='+ typeof f );
}
//
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
//CHECK#2
if (function f(arg){
if (arg===0)
return 1;
else
return f(arg-1)*arg;
}(3)!==6) {
$ERROR('#2: FunctionDeclaration cannot be localed inside an Expression');
};
//
//////////////////////////////////////////////////////////////////////////////
}
});