Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jakartaee-tck-dev] WIP TCK Servlet with Arquillian

Hi
I made some progress and get it down to only 4 failures with glassfish 6.2.5.
Results available here https://jenkins.webtide.net/job/tck/job/tck-olamy-github-tck-run-module-glassfish/ or with a GH action here: https://github.com/olamy/jakartaee-tck/actions/workflows/maven.yml (but GH actions doesn't have any notion of unstable build so it's green bit there are 4 failures.
I created a Maven module named tck-run (https://github.com/olamy/jakartaee-tck/tree/servlet-module-atleast/tck-run
We can easily change the location then, but it is the part responsible for running the TCK.
You can have a try using this: mvn -V -B -U -am clean verify -e -pl :tck-run -am  -Pglassfish-ci-managed
There are still issues with the test using the client certificate I still can't get working (yet)








On Thu, Apr 21, 2022 at 10:55 AM Olivier Lamy <olamy@xxxxxxxxxxx> wrote:


On Wed, Apr 20, 2022 at 4:41 AM arjan tijms <arjan.tijms@xxxxxxxxx> wrote:
Hi,

On Tue, Apr 19, 2022 at 2:41 AM Olivier Lamy <olamy@xxxxxxxxxxx> wrote:
Hi,
The migration of servlet tck to arquillian is finally complete.
Code is in in branch servlet-module-atleast (here https://github.com/olamy/jakartaee-tck/tree/servlet-module-atleast )
There is still some cleanup of legacy code to do but currently it works (some details on the status with Jetty: https://github.com/jetty-project/servlet-tck-run)
I'm not sure which arquillian container to use for validating as default platform.

I'm also not sure which one should be the default, but for verification did you try GlassFish 7 already?

For an example of the profile for it, see https://github.com/jakartaee/faces/blob/master/tck/pom.xml#L442

Thanks for this.
haha it turns out I still have some work to do for using an arquillian remote compared to my current test with an embedded one :) 
 

Kind regards,
Arjan Tijms


 
Please note the branch has been started from the branch called tckrefactor ( https://github.com/eclipse-ee4j/jakartaee-tck/tree/tckrefactor) so it's not in sync wit master.
I wonder what is the best option here, keep working on other tcks from tckrefactor branch or update with changes from master?
My idea was to now migrate jsp. 

thoughts?

Thanks
Olivier


On Sat, Mar 26, 2022 at 3:27 AM Scott Marlow <smarlow@xxxxxxxxxx> wrote:
On 3/24/22 1:06 AM, Olivier Lamy wrote:
Hi, 

On Thu, Mar 17, 2022 at 12:38 AM Scott Marlow <smarlow@xxxxxxxxxx> wrote:


On 3/16/22 1:59 AM, Olivier Lamy wrote:
Hi
I finally rolled up my sleeves and made some changes for the TCK servlet to be able to run using Arquillian.
This is an early stage but it works (for only a limited number of tests at this time).
To be honest right now, there are only two classes with 19 tests :) (but I'm currently looking at adding few more)
Just search the class with @ExtendWith(ArquillianExtension.class) 
It requires some local build if you want to test that.

https://github.com/olamy/jakartaee-tck/tree/servlet-module-atleast is looking good so far, nice start!


I made some more progress and finally found a way to honour the javadoc tag used in the code (otherwise it's running too many tests)
The first step is a Maven plugin parsing java sources to generate a file (/META-INF/tck-tests.txt) containing all class#method 
Then I created a junit TestEngine which read those files to configure the tests to run.
The idea is to have a Maven projects having differents TCKs such servlet, jsp, websocket and run tests according to those files.

+1


Currently as of now with Jetty Arquillian there are only 1319 tests running.
The TCK should have 1685 tests which is what is generated by the Maven plugin parsing the sources.
I have figured out some issues to fix as some tests do not start as the archive cannot be deployed.
The reasons are: missing a login service (some tests have some <login-config>), https (default arquillian deploys only in http),...
so still some work to do but made some progress.
Please have a look and let me know.

https://github.com/jakartaee/rest might of dealt with that in their TCK.  https://github.com/jakartaee/rest/blob/master/jaxrs-tck/src/main/resources/ee/jakarta/tck/ws/rs/ee/rs/core/securitycontext/basic/web.xml.template#L65 has a login-config and https://github.com/jakartaee/rest/blob/master/jaxrs-tck/src/main/resources/ee/jakarta/tck/ws/rs/ee/rs/core/securitycontext/basic/web.xml.template#L65 does as well.




TCK changes are in my fork 

I haven;t changed everything I'd like to change (such as simplification of some parts, using jdk httpclient, a lot of cleanup as it's now jdk11 level, using more test asserts etc...)
I have left some class dependencies in the libutil module.
Ideally I'd like to remove this as well to have only a single module. but I don;t really very strong opinion.

Please let me know what do you think (and remember it's only a start to make part of the current code working with Arquillian and this can (need to) be improved a lot!)

cheers
--
Olivier

_______________________________________________
jakartaee-tck-dev mailing list
jakartaee-tck-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/jakartaee-tck-dev


--
Olivier


--
Olivier
_______________________________________________
jakartaee-tck-dev mailing list
jakartaee-tck-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/jakartaee-tck-dev
_______________________________________________
jakartaee-tck-dev mailing list
jakartaee-tck-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/jakartaee-tck-dev


--
Olivier


--
Olivier

Back to the top