mirror of
https://github.com/oven-sh/bun
synced 2026-02-02 15:08:46 +00:00
bindings: fix createTypeError and createRangeError inheritance (#11341)
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -54,6 +54,7 @@
|
|||||||
/test.js
|
/test.js
|
||||||
/test.ts
|
/test.ts
|
||||||
/testdir
|
/testdir
|
||||||
|
/test.zig
|
||||||
build
|
build
|
||||||
build.ninja
|
build.ninja
|
||||||
bun-binary
|
bun-binary
|
||||||
|
|||||||
@@ -2465,14 +2465,7 @@ JSC__JSValue JSC__JSValue__createRangeError(const ZigString* message, const ZigS
|
|||||||
{
|
{
|
||||||
JSC::VM& vm = globalObject->vm();
|
JSC::VM& vm = globalObject->vm();
|
||||||
ZigString code = *arg1;
|
ZigString code = *arg1;
|
||||||
JSC::JSObject* rangeError = Zig::getErrorInstance(message, globalObject).asCell()->getObject();
|
JSC::JSObject* rangeError = Zig::getRangeErrorInstance(message, globalObject).asCell()->getObject();
|
||||||
static const char* range_error_name = "RangeError";
|
|
||||||
|
|
||||||
rangeError->putDirect(
|
|
||||||
vm, vm.propertyNames->name,
|
|
||||||
JSC::JSValue(JSC::jsOwnedString(
|
|
||||||
vm, WTF::String(WTF::StringImpl::createWithoutCopying({ range_error_name, 10 })))),
|
|
||||||
0);
|
|
||||||
|
|
||||||
if (code.len > 0) {
|
if (code.len > 0) {
|
||||||
auto clientData = WebCore::clientData(vm);
|
auto clientData = WebCore::clientData(vm);
|
||||||
@@ -2488,14 +2481,7 @@ JSC__JSValue JSC__JSValue__createTypeError(const ZigString* message, const ZigSt
|
|||||||
{
|
{
|
||||||
JSC::VM& vm = globalObject->vm();
|
JSC::VM& vm = globalObject->vm();
|
||||||
ZigString code = *arg1;
|
ZigString code = *arg1;
|
||||||
JSC::JSObject* typeError = Zig::getErrorInstance(message, globalObject).asCell()->getObject();
|
JSC::JSObject* typeError = Zig::getTypeErrorInstance(message, globalObject).asCell()->getObject();
|
||||||
static const char* range_error_name = "TypeError";
|
|
||||||
|
|
||||||
typeError->putDirect(
|
|
||||||
vm, vm.propertyNames->name,
|
|
||||||
JSC::JSValue(JSC::jsOwnedString(
|
|
||||||
vm, WTF::String(WTF::StringImpl::createWithoutCopying({ range_error_name, 9 })))),
|
|
||||||
0);
|
|
||||||
|
|
||||||
if (code.len > 0) {
|
if (code.len > 0) {
|
||||||
auto clientData = WebCore::clientData(vm);
|
auto clientData = WebCore::clientData(vm);
|
||||||
|
|||||||
@@ -153,3 +153,8 @@ it("self is a getter", () => {
|
|||||||
expect(descriptor.configurable).toBe(true);
|
expect(descriptor.configurable).toBe(true);
|
||||||
expect(globalThis.self).toBe(globalThis);
|
expect(globalThis.self).toBe(globalThis);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("errors thrown by native code should be TypeError", async () => {
|
||||||
|
expect(() => Bun.dns.prefetch()).toThrowError(TypeError);
|
||||||
|
expect(async () => await fetch("http://localhost", { body: "123" })).toThrowError(TypeError);
|
||||||
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user