Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[jakartaee-platform-dev] Pattern for designating certain standlone TCK tests as EE-only?

In batch we have some function (integration with JTA global transactions) required in EE-only.

As we continue to phase out the Batch portion of the Platform TCK and use our Batch standalone TCK instead, how do we "guard" the tests accordingly?
Is there already a pattern for dealing with this in other component TCKs?

Some ideas:

1. Test for EE and run/ignore/no-op accordingly
      Do a JNDI lookup of java:comp/UserTransaction and if it fails dynamically ignore all the test methods in the class
(a slight variant would be to pass the tests rather than ignoring.  

2. Add SE vs EE config
   Add some other external switch/config so that the user executing the TCK has to explicitly choose if they're doing an "SE run" or an "EE run" ... with the JTA tests only getting executed in EE.

3. Move the EE set of tests into the platform TCK
---

Does 1. seem like an allowed approach, given the overall Eclipse / Jakarta specification rules?  

Do we need to worry about a case where the java:comp/UserTransaction lookup fails on a supposed EE-compatible implementation, thereby ignoring tests which should have been executed?  

Say one had a modular implementation where transactions or even JNDI had to be optionally activated/enabled.... is there a concern that this implementation could certify against Batch and go on to certify against all components in the platform but without ever having run the "Batch EE" tests?

I think that's probably enough detail to help route this conversation to where it needs to happen.. either the right list or maybe the monthly call, so please let me know.

Thank you,
------------------------------------------------------
Scott Kurz
WebSphere / Open Liberty Batch and Developer Experience
skurz@xxxxxxxxxx
--------------------------------------------------------



Back to the top