Skip to content

TCK Challenge Managed(Scheduled)ExecutorDefinitionTests.testCompletedFuture(MSE) Tests #224

@aubi

Description

@aubi

Specification:

Jakarta Concurrency 3.0.0

Challenged test(s):

ee.jakarta.tck.concurrent.spec.ManagedExecutorService.resourcedef.ManagedExecutorDefinitionTests#testCompletedFuture

ee.jakarta.tck.concurrent.spec.ManagedScheduledExecutorService.resourcedef.ManagedScheduledExecutorDefinitionTests#testCompletedFutureMSE

TCK version:

3.0.0

Tested implementation:

Payara 6 (branch) with Concurrent-RI (branch)

Description

Test ManagedExecutorDefinitionTests/ManagedExecutorDefinitionServlet.testCompletedFuture uses "java:module/concurrent/ExecutorB" ManagedExecutorService, which is configured to use this context:

@ContextServiceDefinition(name = "java:module/concurrent/ContextB",
                          cleared = TRANSACTION,
                          unchanged = { APPLICATION, IntContext.NAME },
                          propagated = ALL_REMAINING)

E.g. the implementation must keep APPLICATION (JNDI search) unchanged during the thenAcceptAsync() call.

This test expects, that the thread's context doesn't recognize java:module JNDI lookup. As I understand, Open Liberty starts threads with "empty contexts", so JNDI calls fail and TCK test succeeds.

The same happens in ee.jakarta.tck.concurrent.spec.ManagedScheduledExecutorService.resourcedef.ManagedScheduledExecutorDefinitionService#testCompletedFutureMSE

A message from Nathan:

It looks like a mistake in the test case where it is accidentally testing the ‘unchanged’ setting as though it were ‘cleared’. The unchanged setting leaves the context type alone, so whatever the context was on the thread before it must remain. The mistake went unnoticed on Open Liberty because the state of the thread happens to already match the test assertion. This one should definitely be challenged for the mistaken assertion.

Metadata

Metadata

Assignees

No one assigned

    Labels

    acceptedAccepted certification requestchallengeTCK challenge

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions