v8/test/mjsunit/string-normalize.js
adamk 9c8f78e26f [es6] Fix String.prototype.normalize to properly validate argument
BUG=v8:4302
LOG=n

Review URL: https://codereview.chromium.org/1237873003

Cr-Commit-Position: refs/heads/master@{#29683}
2015-07-15 15:15:14 +00:00

20 lines
872 B
JavaScript

// Copyright 2014 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
assertEquals('', ''.normalize());
assertTrue(delete Array.prototype.indexOf);
assertEquals('', ''.normalize());
assertThrows(function() { ''.normalize('invalid'); }, RangeError);
assertTrue(delete Array.prototype.join);
assertThrows(function() { ''.normalize('invalid'); }, RangeError);
// All of these toString to an invalid form argument.
assertThrows(function() { ''.normalize(null) }, RangeError);
assertThrows(function() { ''.normalize(true) }, RangeError);
assertThrows(function() { ''.normalize(false) }, RangeError);
assertThrows(function() { ''.normalize(42) }, RangeError);
assertThrows(function() { ''.normalize({}) }, RangeError);
assertThrows(function() { ''.normalize([]) }, RangeError);