mirror of https://github.com/tc39/test262.git
27 lines
930 B
JavaScript
27 lines
930 B
JavaScript
|
// Copyright 2012 Mozilla Corporation. All rights reserved.
|
||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||
|
|
||
|
/*---
|
||
|
es5id: 13.1.1_2
|
||
|
description: Tests that localeCompare coerces this to a string.
|
||
|
author: Norbert Lindenberg
|
||
|
---*/
|
||
|
|
||
|
var thisValues = [true, 5, "hello", {toString: function () { return "good bye"; }}];
|
||
|
var thatValues = ["true", "5", "hello", "good bye"];
|
||
|
|
||
|
var i;
|
||
|
for (i = 0; i < thisValues.length; i++) {
|
||
|
var j;
|
||
|
for (j = 0; j < thatValues.length; j++) {
|
||
|
var result = String.prototype.localeCompare.call(thisValues[i], thatValues[j]);
|
||
|
if ((result === 0) !== (i === j)) {
|
||
|
if (result === 0) {
|
||
|
$ERROR("localeCompare treats " + thisValues[i] + " and " + thatValues[j] + " as equal.");
|
||
|
} else {
|
||
|
$ERROR("localeCompare treats " + thisValues[i] + " and " + thatValues[j] + " as different.");
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|