Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jakartaee-tck-dev] How are we grouping EJB 2.x view test requirements?

All,

I've done some analysis on our EJB sections of the TCK with the intent to see what the proper optional groups should be.

The analysis was done by bytecode scanning the archives in following directories of our Jakarta EE 9.1 snapshot TCK

 - jakartaeetck-9.1.0-2021-03-24.1451/dist/com/sun/ts/tests/ejb32/
 - jakartaeetck-9.1.0-2021-03-24.1451/dist/com/sun/ts/tests/ejb30/
 - jakartaeetck-9.1.0-2021-03-24.1451/dist/com/sun/ts/tests/ejb/

If you'd like to see the analysis code, here it is:

 - https://github.com/tomitribe/jkta/blob/master/src/main/java/org/tomitribe/jkta/usage/EjbTestAnalysis.java

It's all hardcoded, so if you want to run it you'll just need to update the paths to match your machine.  After that you should be ale to run it from your IDE if you like.

> On Feb 26, 2021, at 3:59 PM, David Blevins <dblevins@xxxxxxxxxxxxx> wrote:
> 
> - Enterprise Beans 2.x API
>      Session Beans
>      2.x Local and Remote Home and Component views
>      TimedObject interface
>      SessionSynchronization interface

For this I looked for any `dist` archives that use any of the following API classes

 - https://github.com/tomitribe/jkta/blob/64f55ea2ac8ced4a0564838a5c444088c36abe5f/src/main/java/org/tomitribe/jkta/usage/EjbTestAnalysis.java#L220-L234

That gives us the following `ejb2x_optional` test sections:

 - https://gist.github.com/dblevins/d862e558392fcf4a499f36f374401477#file-ejb2x_optional-txt

> 
> - Entity Beans
>      2.x / 1.x CMP/BMP Entity Beans
>      Enterprise Beans QL

For this I looked for any `dist` archives that use any of the following API classes

 - https://github.com/tomitribe/jkta/blob/64f55ea2ac8ced4a0564838a5c444088c36abe5f/src/main/java/org/tomitribe/jkta/usage/EjbTestAnalysis.java#L204-L211

That gives us the following `entitybeans_optional` test sections:

 - https://gist.github.com/dblevins/d862e558392fcf4a499f36f374401477#file-entitybeans_optional-txt


Overall, here is how the two sections combined matches up to the test sections that are currently labeled with either `ejb_1x_optional` or `ejb_2x_optional` 

 - https://gist.github.com/dblevins/5256ff149938bd92bdf6211c8ade373f/revisions?diff=unified

Basically, 9 tests sections currently marked optional that should be required.  They appear to be all MDB sections.  Then there are another 37 sections that would now become optional.  These are all related to the EJB 2.x optional group which wasn't really covered well.

One thing of note is there are a lot of "ejb30" tests that are getting excluded from the proposed new `ejb2x_optional` group.  I did a manual check of a couple and it appears they're getting hit due to use of the SessionSynchronization interface.

I'd like to take a closer look at these newly excluded "ejb30" tests as most of them should probably be there in spirit.


-David



Back to the top