Skip to content

[Feature]: Replace ExtensionContext.Store.CloseableResource to AutoCloseable #1864

@arukiidou

Description

@arukiidou

🚀 Feature Request

Replace ExtensionContext.Store.CloseableResource to AutoCloseable

static class PlaywrightRegistry implements ExtensionContext.Store.CloseableResource {

Example

from

  static class PlaywrightRegistry implements ExtensionContext.Store.CloseableResource {

to

  static class PlaywrightRegistry implements AutoCloseable {

Motivation

ExtensionContext.Store.CloseableResource is deprecated since 5.13

see:
https://docs.junit.org/5.14.0/user-guide/#extensions-keeping-state

Resource management via AutoCloseable
An extension context store is bound to its extension context lifecycle. When an extension context lifecycle ends it closes its associated store. As of JUnit 5.13, all stored values that are instances of AutoCloseable are notified by an invocation of their close() method in the inverse order they were added in (unless the junit.jupiter.extensions.store.close.autocloseable.enabled configuration parameter is set to false). Older versions only supported CloseableResource, which is deprecated but still available for backward compatibility.

https://docs.junit.org/5.14.0/api/org.junit.jupiter.api/org/junit/jupiter/api/extension/ExtensionContext.Store.CloseableResource.html

Deprecated.
Please extend AutoCloseable directly.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions