blob: bc1e276e5fa38f100c9ef90a584c13973965b3d1 [file]
//-------------------------------------------------------------------------------------------------------
// Copyright (C) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
//-------------------------------------------------------------------------------------------------------
var collatorExcludeList = [];
var numberFormatExcludeList = [];
var dateTimeFormatExcludeList = [];
function testHiddenInternals(constructor, objType, excludeList) {
var obj = new constructor();
var properties = Object.getOwnPropertyNames(obj);
if (properties.length == 0) return;
var extraProperties = false;
properties.forEach(function (prop) {
if (excludeList.indexOf(prop) !== -1) return;
if (prop.indexOf("__", 0) === -1) {
WScript.Echo("Detected additional property '" + prop + "' on '" + objType + "', if property is expected update this test's exclude lists.");
extraProperties = true;
}
});
if (extraProperties) {
WScript.Echo("Failed for '" + objType + "'!");
}
}
testHiddenInternals(Intl.Collator, "Collator", collatorExcludeList);
testHiddenInternals(Intl.NumberFormat, "NumberFormat", numberFormatExcludeList);
testHiddenInternals(Intl.DateTimeFormat, "DateTimeFormat", dateTimeFormatExcludeList);
if(Intl.hasOwnProperty("EngineInterface") === true){
WScript.Echo("EngineInterface object is not hidden.");
}
WScript.Echo("Pass");