v8/test/mjsunit/es6/classof-proxy.js
verwaest a1e9ccf90f Fix Object.prototype.toString.call(proxy)
BUG=

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

Cr-Commit-Position: refs/heads/master@{#32806}
2015-12-11 15:57:30 +00:00

28 lines
768 B
JavaScript

// Copyright 2015 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.
// Flags: --allow-natives-syntax --harmony-proxies
function test_function(o) {
if (%_ClassOf(o) === "Function") {
return true;
} else {
return false;
}
}
var non_callable = new Proxy({}, {});
var callable = new Proxy(function(){}.__proto__, {});
var constructable = new Proxy(function(){}, {});
assertFalse(test_function(non_callable));
assertTrue(test_function(callable));
assertTrue(test_function(constructable));
%OptimizeFunctionOnNextCall(test_function);
assertFalse(test_function(non_callable));
assertTrue(test_function(callable));
assertTrue(test_function(constructable));