//# ==++== //# //# //# Copyright (c) 2002 Microsoft Corporation. All rights reserved. //# //# The use and distribution terms for this software are contained in the file //# named license.txt, which can be found in the root of this distribution. //# By using this software in any fashion, you are agreeing to be bound by the //# terms of this license. //# //# You must not remove this notice, or any other, from this software. //# //# //# ==--== //#################################################################################### @cc_on import System; var NULL_DISPATCH = null; var apGlobalObj; var apPlatform; var lFailCount; var iTestID = 53103; @if(!@aspx) function rectangle(w, h){ this.width=w; this.height=h; } @else expando function rectangle(w, h){ this.width=w; this.height=h; } @end function verify(vAct, vExp, vMsg, bugNum){ if (null == bugNum) bugNum = ""; if (vAct != vExp) apLogFailInfo(vMsg, vExp, vAct, bugNum); } function funcobj1 (){ @if(@_fast) var rect1, exp1 @end apInitTest("funcobj1 "); //------------------------------------------------------------------- apInitScenario("test class existence"); verify(typeof Function, "function", "", null); //---------------------------------------------------------------------------- apInitScenario("verify instance is a func"); verify(typeof (new Function()), "function", "", null ); //---------------------------------------------------------------------------- apInitScenario("verify function can execute"); verify((new Function("return 5"))(), 5, "", 211237); //---------------------------------------------------------------------------- apInitScenario("verify function interprets args correctly"); verify((new Function("a","b","return a+b"))(10,3), 13,"", null ); //---------------------------------------------------------------------------- apInitScenario("verify function interprets args correctly"); verify((new Function("a","b","return a+b"))(10,3), 13, "", null ); //---------------------------------------------------------------------------- apInitScenario("verify function has an arguments member - not in fast mode"); @if(!@_fast) function fnSum1(){ var i,tot=0; for (i=0;i= 0) System.Environment.ExitCode = lFailCount; else System.Environment.ExitCode = 1; function apInitTest(stTestName) { lFailCount = 0; apGlobalObj = new Object(); apGlobalObj.apGetPlatform = function Funca() { return "Rotor" } apGlobalObj.LangHost = function Funcb() { return 1033;} apGlobalObj.apGetLangExt = function Funcc(num) { return "EN"; } apPlatform = apGlobalObj.apGetPlatform(); var sVer = "1.0"; //navigator.appVersion.toUpperCase().charAt(navigator.appVersion.toUpperCase().indexOf("MSIE")+5); apGlobalObj.apGetHost = function Funcp() { return "Rotor " + sVer; } print ("apInitTest: " + stTestName); } function apInitScenario(stScenarioName) {print( "\tapInitScenario: " + stScenarioName);} function apLogFailInfo(stMessage, stExpected, stActual, stBugNum) { lFailCount = lFailCount + 1; print ("***** FAILED:"); print ("\t\t" + stMessage); print ("\t\tExpected: " + stExpected); print ("\t\tActual: " + stActual); } function apGetLocale(){ return 1033; } function apWriteDebug(s) { print("dbg ---> " + s) } function apEndTest() {}