Skip to content

Add WPT tests for Error Stack Accessor proposal web platform integration#58397

Open
ljharb wants to merge 1 commit intoweb-platform-tests:masterfrom
ljharb:error-stack-accessor-integration
Open

Add WPT tests for Error Stack Accessor proposal web platform integration#58397
ljharb wants to merge 1 commit intoweb-platform-tests:masterfrom
ljharb:error-stack-accessor-integration

Conversation

@ljharb
Copy link

@ljharb ljharb commented Mar 10, 2026

Add tests for DOMException .stack behavior per the TC39 Error Stack Accessor proposal (https://tc39.es/proposal-error-stack-accessor/) and the WebIDL [[ErrorData]] integration (whatwg/webidl#1421):

  • DOMException instances get .stack as a string via Error.prototype.stack accessor
  • Error.prototype.stack property descriptor has correct accessor attributes
  • Error.prototype.stack getter works on DOMException instances
  • Error.prototype.stack setter (SetterThatIgnoresPrototypeProperties) behavior
  • DOMException.prototype does not have an own stack property

Add tests for structured clone serialization/deserialization of [[Stack]]:

  • structuredClone() preserves .stack on Error and all NativeError subtypes
  • structuredClone() preserves .stack on DOMException (constructed and thrown)
  • Cloned .stack is accessed via the accessor, not as an own property

See tc39/proposal-error-stack-accessor#9 and tc39/proposal-error-stack-accessor#8

Add tests for DOMException .stack behavior per the TC39 Error Stack
Accessor proposal (https://tc39.es/proposal-error-stack-accessor/) and
the WebIDL [[ErrorData]] integration (whatwg/webidl#1421):

- DOMException instances get .stack as a string via Error.prototype.stack accessor
- Error.prototype.stack property descriptor has correct accessor attributes
- Error.prototype.stack getter works on DOMException instances
- Error.prototype.stack setter (SetterThatIgnoresPrototypeProperties) behavior
- DOMException.prototype does not have an own stack property

Add tests for structured clone serialization/deserialization of [[Stack]]:

- structuredClone() preserves .stack on Error and all NativeError subtypes
- structuredClone() preserves .stack on DOMException (constructed and thrown)
- Cloned .stack is accessed via the accessor, not as an own property

See tc39/proposal-error-stack-accessor#9 and tc39/proposal-error-stack-accessor#8
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants