-
Notifications
You must be signed in to change notification settings - Fork 41
Description
Specification:
Challenged test(s):
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
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.