blob: 8f8863e56a1636ca0c40640d30b57d1b066bbf2d [file] [log] [blame]
//-------------------------------------------------------------------------------------------------------
// Copyright (C) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
//-------------------------------------------------------------------------------------------------------
function print(s) {
if (typeof(WScript) == "undefined")
document.write(s + "<br/>");
else
WScript.Echo(s);
}
var Count = 0;
var Failed = 0;
function Check(str, result, expected)
{
if (result != expected)
{
print("Test #"+Count+" failed. <"+str+"> Expected "+expected);
Failed++;
}
}
function test()
{
var x = NaN + 0.5;
var r = false;
// Test 1
Count++; r = false;
if (x == x) {
r = true;
}
Check("x == x", r, false);
// Test 2
Count++; r = false;
if (x != x) {
r = true;
}
Check("x != x", r, true);
// Test 3
Count++; r = false;
if (x <= x) {
r = true;
}
Check("x <= x", r, false);
// Test 4
Count++; r = false;
if (x < x) {
r = true;
}
Check("x < x", r, false);
// Test 5
Count++; r = false;
if (x >= x) {
r = true;
}
Check("x >= x", r, false);
// Test 6
Count++; r = false;
if (x > x) {
r = true;
}
Check("x > x", r, false);
// Test 7
Count++;
Check("x == x", x == x, false);
// Test 8
Count++;
Check("x != x", x != x, true);
// Test 9
Count++;
Check("x <= x", x <= x, false);
// Test 10
Count++;
Check("x < x", x < x, false);
// Test 11
Count++;
Check("x >= x", x >= x, false);
// Test 12
Count++;
Check("x > x", x > x, false);
// Test 13
Count++; r = false;
if (x === x) {
r = true;
}
Check("x === x", r, false);
// Test 14
Count++; r = false;
if (x !== x) {
r = true;
}
Check("x !== x", r, true);
if (!Failed)
{
print("Passed");
}
}
test();