mirror of
https://github.com/SSCLI/sscli_20021101
synced 2026-06-08 12:28:57 +00:00
9fa3874800
Moved the original file to the archive subfolder.
573 lines
15 KiB
JavaScript
573 lines
15 KiB
JavaScript
//# ==++==
|
|
//#
|
|
//#
|
|
//# 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 = 52916;
|
|
|
|
|
|
function FuncRetVal(){
|
|
return 655.35;
|
|
}
|
|
|
|
|
|
@if(!@aspx)
|
|
function myObject(){
|
|
this.retVal = myObjVal();
|
|
}
|
|
@else
|
|
expando function myObject(){
|
|
this.retVal = myObjVal();
|
|
}
|
|
@end
|
|
|
|
function myObjVal(){
|
|
return 123321;
|
|
}
|
|
|
|
function mult01() {
|
|
var tmp,res,expected,emptyVar;
|
|
|
|
var myDate = new Date();
|
|
myDate.setTime(0); // this is Wed Dec 31 16:00:00 1969
|
|
|
|
var numvar = 4321;
|
|
var strvar = "57";
|
|
var boolvar = true; // new Boolean(true);
|
|
var emptystrvar = "";
|
|
|
|
var ary = new Array();
|
|
ary[2] = 12.14;
|
|
ary[3] = 13.14;
|
|
ary[4] = 15.14;
|
|
|
|
var myObj = new myObject();
|
|
var myStr = new String("112");
|
|
|
|
apInitTest("mult01");
|
|
|
|
apInitScenario("numvar * numvar");
|
|
res = numvar * numvar;
|
|
expected = 18671041;
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("strvar * numvar");
|
|
res = strvar * numvar;
|
|
expected = 246297;
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("ary[3] * numvar");
|
|
res = ary[3] * numvar;
|
|
expected = 56777.94;
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("FuncRetVal() * numvar");
|
|
res = FuncRetVal() * numvar;
|
|
expected = 2831767.35;
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("myDate.getDate() * numvar");
|
|
res = myDate.getDate() * numvar;
|
|
expected = 133951
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("boolvar * numvar");
|
|
res = boolvar * numvar;
|
|
expected = 4321;
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("numvar * strvar");
|
|
res = numvar * strvar;
|
|
expected = 246297
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("strvar * strvar");
|
|
res = strvar * strvar;
|
|
expected = 3249
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("ary[3] * strvar");
|
|
res = ary[3] * strvar;
|
|
expected = 748.98
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("FuncRetVal() * strvar");
|
|
res = FuncRetVal() * strvar;
|
|
expected = 37354.95;
|
|
if (doVerify(expected,res)) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("myDate.getDate() * strvar");
|
|
res = myDate.getDate() * strvar;
|
|
expected = 1767
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("boolvar * strvar");
|
|
res = boolvar * strvar;
|
|
expected = 57;
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("numvar * ary[3]");
|
|
res = numvar * ary[3];
|
|
expected = 56777.94
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("strvar * ary[3]");
|
|
res = strvar * ary[3];
|
|
expected = 748.98
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("ary[3] * ary[3]");
|
|
res = ary[3] * ary[3];
|
|
expected = 172.6596
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("FuncRetVal() * ary[3]");
|
|
res = FuncRetVal() * ary[3];
|
|
expected = 8611.299
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("myDate.getDate() * ary[3]");
|
|
res = myDate.getDate() * ary[3];
|
|
expected = 407.34
|
|
if (doVerify(expected,res)) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("boolvar * ary[3]");
|
|
res = boolvar * ary[3];
|
|
expected = 13.14
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("numvar * FuncRetVal()");
|
|
res = numvar * FuncRetVal();
|
|
expected = 2831767.35;
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("strvar * FuncRetVal()");
|
|
res = strvar * FuncRetVal();
|
|
expected = 37354.95
|
|
if (doVerify(expected,res)) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("ary[3] * FuncRetVal()");
|
|
res = ary[3] * FuncRetVal();
|
|
expected = 8611.299
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("FuncRetVal() * FuncRetVal()");
|
|
res = FuncRetVal() * FuncRetVal();
|
|
expected = 429483.6225
|
|
if (doVerify(expected,res)) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("myDate.getDate() * FuncRetVal()");
|
|
res = myDate.getDate() * FuncRetVal();
|
|
expected = 20315.85
|
|
if (doVerify(expected,res)) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("boolvar * FuncRetVal()");
|
|
res = boolvar * FuncRetVal();
|
|
expected = 655.35
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("numvar * myDate.getDate()");
|
|
res = numvar * myDate.getDate();
|
|
expected = 133951
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("strvar * myDate.getDate()");
|
|
res = strvar * myDate.getDate();
|
|
expected = 1767
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("ary[3] * myDate.getDate()");
|
|
res = ary[3] * myDate.getDate();
|
|
expected = 407.34
|
|
if (doVerify(expected,res)) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("FuncRetVal() * myDate.getDate()");
|
|
res = FuncRetVal() * myDate.getDate();
|
|
expected = 20315.85
|
|
if (doVerify(expected,res)) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("myDate.getDate() * myDate.getDate()");
|
|
res = myDate.getDate() * myDate.getDate();
|
|
expected = 961
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("boolvar * myDate.getDate()");
|
|
res = boolvar * myDate.getDate();
|
|
expected = 31;
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("numvar * boolvar");
|
|
res = numvar * boolvar;
|
|
expected = 4321;
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("strvar * boolvar");
|
|
res = strvar * boolvar;
|
|
expected = 57;
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("ary[3] * boolvar");
|
|
res = ary[3] * boolvar;
|
|
expected = 13.14;
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("FuncRetVal() * boolvar");
|
|
res = FuncRetVal() * boolvar;
|
|
expected = 655.35;
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("myDate.getDate() * boolvar");
|
|
res = myDate.getDate() * boolvar;
|
|
expected = 31;
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("boolvar * boolvar");
|
|
res = boolvar * boolvar;
|
|
expected = 1;
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("numvar * myObj.retVal");
|
|
@cc_on
|
|
@if (@_jscript_version < 7)
|
|
res = numvar * myObj.retVal;
|
|
@else
|
|
res = numvar * 123321;
|
|
@end
|
|
expected = 532870041;
|
|
if (doVerify(expected,res)) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("strvar * myObj.retVal");
|
|
@if (@_jscript_version < 7)
|
|
res = strvar * myObj.retVal;
|
|
@else
|
|
res = strvar * 123321;
|
|
@end
|
|
expected = 7029297
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("ary[3] * myObj.retVal");
|
|
@if (@_jscript_version < 7)
|
|
res = ary[3] * myObj.retVal;
|
|
@else
|
|
res = ary[3] * 123321;
|
|
@end
|
|
expected = 1620437.94
|
|
if (doVerify(expected,res)) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("FuncRetVal() * myObj.retVal");
|
|
@if (@_jscript_version < 7)
|
|
res = FuncRetVal() * myObj.retVal;
|
|
@else
|
|
res = FuncRetVal() * 123321;
|
|
@end
|
|
expected = 80818417.35
|
|
if (doVerify(expected,res)) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("myDate.getDate() * myObj.retVal");
|
|
@if (@_jscript_version < 7)
|
|
res = myDate.getDate() * myObj.retVal;
|
|
@else
|
|
res = myDate.getDate() * 123321;
|
|
@end
|
|
expected = 3822951
|
|
if (doVerify(expected,res)) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("boolvar * myObj.retVal");
|
|
@if (@_jscript_version < 7)
|
|
res = boolvar * myObj.retVal;
|
|
@else
|
|
res = boolvar * 123321;
|
|
@end
|
|
expected = 123321
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apInitScenario("emptystrvar * numvar");
|
|
res = emptystrvar * numvar;
|
|
expected = 0;
|
|
if (expected != res) {
|
|
apLogFailInfo("wrong return value",expected,res,"");
|
|
}
|
|
if (typeof(res) != "number") {
|
|
apLogFailInfo("wrong return type","number",res,"");
|
|
}
|
|
|
|
apEndTest();
|
|
}
|
|
|
|
function doVerify(a,b) {
|
|
if (a == b) { return 0; }
|
|
var epsilon = a;
|
|
if (b < a) epsilon = a;
|
|
epsilon /= 1e6;
|
|
var result = a - b;
|
|
if (result < 0) result *= -1;
|
|
|
|
if (result > epsilon) { return 1; } // failure!
|
|
return 0; // success
|
|
}
|
|
|
|
mult01();
|
|
|
|
|
|
if(lFailCount >= 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() {}
|