jakartaee / jakartaee/websocket
TCK: WebSocket negative-deployment tests assume deployment failures occur inside test execution instead of during Arquillian-managed deployment
- Dominant language
- Java
- Stars
- 78
- Forks
- 47
- Avg merge
- 1h 32m
- Merged PRs (30d)
- 1
Description
**Challenged tests**
1. com.sun.ts.tests.websocket.negdep.invalidpathparamtype.pasrv.onclose.WSCClientIT
2. com.sun.ts.tests.websocket.negdep.invalidpathparamtype.pasrv.onerror.WSCClientIT
3. com.sun.ts.tests.websocket.negdep.invalidpathparamtype.pasrv.onmessage.WSCClientIT
4. com.sun.ts.tests.websocket.negdep.invalidpathparamtype.pasrv.onopen.WSCClientIT
5. com.sun.ts.tests.websocket.negdep.invalidpathparamtype.srv.onclose.WSCClientIT
6. com.sun.ts.tests.websocket.negdep.invalidpathparamtype.srv.onerror.WSCClientIT
7. com.sun.ts.tests.websocket.negdep.invalidpathparamtype.srv.onmessage.WSCClientIT
8. com.sun.ts.tests.websocket.negdep.invalidpathparamtype.srv.onopen.WSCClientIT
9. com.sun.ts.tests.websocket.negdep.malformedpath.WSCClientIT
10. com.sun.ts.tests.websocket.negdep.multiplepaths.WSCClientIT
11. com.sun.ts.tests.websocket.negdep.onclose.srv.duplicate.WSCClientIT
12. com.sun.ts.tests.websocket.negdep.onclose.srv.toomanyargs.WSCClientIT
13. com.sun.ts.tests.websocket.negdep.onerror.srv.duplicate.WSCClientIT
14. com.sun.ts.tests.websocket.negdep.onerror.srv.toomanyargs.WSCClientIT
15. com.sun.ts.tests.websocket.negdep.onmessage.pasrv.nomoreendpoints.WSCClientIT
16. com.sun.ts.tests.websocket.negdep.onmessage.ppsrv.nomoreendpoints.WSCClientIT
17. com.sun.ts.tests.websocket.negdep.onmessage.srv.binarybytebufferint.WSCClientIT
18. com.sun.ts.tests.websocket.negdep.onmessage.srv.binaryduplicate.WSCClientIT
19. com.sun.ts.tests.websocket.negdep.onmessage.srv.binaryinputstreamboolean.WSCClientIT
20. com.sun.ts.tests.websocket.negdep.onmessage.srv.binarynodecoder.WSCClientIT
21. com.sun.ts.tests.websocket.negdep.onmessage.srv.pongboolean.WSCClientIT
22. com.sun.ts.tests.websocket.negdep.onmessage.srv.pongduplicate.WSCClientIT
23. com.sun.ts.tests.websocket.negdep.onmessage.srv.textbigdecimal.WSCClientIT
24. com.sun.ts.tests.websocket.negdep.onmessage.srv.textduplicate.WSCClientIT
25. com.sun.ts.tests.websocket.negdep.onmessage.srv.textnodecoder.WSCClientIT
26. com.sun.ts.tests.websocket.negdep.onmessage.srv.textreaderboolean.WSCClientIT
27. com.sun.ts.tests.websocket.negdep.onmessage.srv.textstringint.WSCClientIT
28. com.sun.ts.tests.websocket.negdep.onopen.srv.duplicate.WSCClientIT
29. com.sun.ts.tests.websocket.negdep.onopen.srv.toomanyargs.WSCClientIT
**TCK Version**
Jakarta WebSocket 2.2.0
**Description**
A broad set of WebSocket negative-deployment tests fail on WebLogic because the container correctly rejects invalid endpoint definitions at deployment time with jakarta.websocket.DeploymentException, but the TCK structure assumes those failures will be observed from within the test body.
Under Arquillian-managed deployment, the invalid application is rejected during deployment/before test execution, so Arquillian fails the class in lifecycle setup (beforeAll) and the test method never gets a chance to perform its intended assertion through NegativeDeploymentClient.
This appears to be a TCK/Arquillian test-structure issue rather than a product issue:
- WebLogic is rejecting spec-invalid endpoint definitions as expected.
- The failing tests are all negative-deployment cases whose expected outcome is deployment failure.
- The mismatch is when that failure is surfaced.
**Additional context**
Codex comment: A likely TCK-side fix would be to express these as expected deployment-failure tests in Arquillian, rather than relying on the test body to observe the failure after deployment.
Contributor guide
Research direction
Start with the listed com.sun.ts.tests.websocket.negdep.*.WSCClientIT classes and inspect how NegativeDeploymentClient is used relative to Arquillian-managed deployment. Check how deployment failures are surfaced before test execution. Done means the negative-deployment tests express and validate the expected DeploymentException at the deployment lifecycle stage rather than relying on the test body.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- testing-qa
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100