27 lines
867 B
JavaScript
27 lines
867 B
JavaScript
|
// Copyright 2018 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.
|
||
|
|
||
|
// Should never be called in this test.
|
||
|
Error.prepareStackTrace = () => 299792458;
|
||
|
|
||
|
{
|
||
|
const that_realm = Realm.create();
|
||
|
const result = Realm.eval(that_realm,
|
||
|
"() => { Error.prepareStackTrace = () => 42; return new Error(); }")();
|
||
|
assertEquals(42, result.stack);
|
||
|
}
|
||
|
{
|
||
|
const that_realm = Realm.create();
|
||
|
const result = Realm.eval(that_realm,
|
||
|
"() => { Error.prepareStackTrace = () => 42; " +
|
||
|
"class MyError extends Error {}; return new MyError(); }")();
|
||
|
assertEquals(42, result.stack);
|
||
|
}
|
||
|
{
|
||
|
const that_realm = Realm.create();
|
||
|
const result = Realm.eval(that_realm,
|
||
|
"() => { Error.prepareStackTrace = () => 42; return {}; }")();
|
||
|
assertFalse("stack" in result);
|
||
|
}
|