From 0c305e0b1be7ab2fb00a8d10572ec1222e4c0c35 Mon Sep 17 00:00:00 2001 From: adamk Date: Thu, 12 Mar 2015 12:04:29 -0700 Subject: [PATCH] Fix error message for Object.observe accept argument BUG=chromium:464695 LOG=n Review URL: https://codereview.chromium.org/1005553003 Cr-Commit-Position: refs/heads/master@{#27171} --- src/messages.js | 2 +- src/object-observe.js | 2 +- test/mjsunit/es7/object-observe.js | 13 +++++++++++++ 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/messages.js b/src/messages.js index 07d6719..62429cf 100644 --- a/src/messages.js +++ b/src/messages.js @@ -81,7 +81,7 @@ var kMessages = { observe_non_object: ["Object.", "%0", " cannot ", "%0", " non-object"], observe_non_function: ["Object.", "%0", " cannot deliver to non-function"], observe_callback_frozen: ["Object.observe cannot deliver to a frozen function object"], - observe_invalid_accept: ["Object.observe accept must be an array of strings."], + observe_invalid_accept: ["Third argument to Object.observe must be an array of strings."], observe_type_non_string: ["Invalid changeRecord with non-string 'type' property"], observe_perform_non_string: ["Invalid non-string changeType"], observe_perform_non_function: ["Cannot perform non-function"], diff --git a/src/object-observe.js b/src/object-observe.js index 01ce805..3ba917e 100644 --- a/src/object-observe.js +++ b/src/object-observe.js @@ -271,7 +271,7 @@ function ConvertAcceptListToTypeMap(arg) { return arg; if (!IS_SPEC_OBJECT(arg)) - throw MakeTypeError("observe_accept_invalid"); + throw MakeTypeError("observe_invalid_accept"); var len = ToInteger(arg.length); if (len < 0) len = 0; diff --git a/test/mjsunit/es7/object-observe.js b/test/mjsunit/es7/object-observe.js index 99fa38a..ad47da5 100644 --- a/test/mjsunit/es7/object-observe.js +++ b/test/mjsunit/es7/object-observe.js @@ -1824,3 +1824,16 @@ for (var b1 = 0; b1 < 2; ++b1) { object: fun, type: 'add', name: 'name' }, ]); })(); + + +(function TestObserveInvalidAcceptMessage() { + var ex; + try { + Object.observe({}, function(){}, "not an object"); + } catch (e) { + ex = e; + } + assertInstanceof(ex, TypeError); + assertEquals("Third argument to Object.observe must be an array of strings.", + ex.message); +})() -- 2.7.4