just for the record I just opened a dev thread about this.
On Wed, Jul 12, 2023 at 9:31 AM Clebert Suconic
wrote:
>
> Also.. is there a MavenLauncher on surefire-its or anywhere else that
> will run multiple tests?
>
> On Wed, Jul 12, 2023 at 9:28 AM Clebert Suconic
> wrote:
> >
> > it seems there is surefire-its for integration tests and there are a
> > couple of resources it will use.
> >
> > I think I should create a new module, surefire-leaktests using
> > check-leak to validate for leaks and use the launcher to run a small
> > testsuite and validate the leaks at the end.
> >
> > One challenge I have is how to get access to MavenLauncher from the
> > new module, and I would need a test-dependency for that.
> >
> > Would you guys see the test dependency on surefire-leaktests a
> > deterrent for a merge?
> >
> >
> >
> > BTW: This thread is becoming a dev thread (as I'm slowly moving from
> > user to dev myself :) )... but if we could keep this thread as it
> > would have the whole context... it would be great..
> > however if there is a bigger crowd more focused on the dev list just
> > say the word and I will start a thread to the Maven Dev List.
> >
> > On Tue, Jul 11, 2023 at 7:22 PM Tamás Cservenák wrote:
> > >
> > > Yes, leak test are warmly welcome :)
> > >
> > > T
> > >
> > > On Wed, Jul 12, 2023, 01:17 Enrico Olivelli wrote:
> > >
> > > > Il Mer 12 Lug 2023, 00:15 Clebert Suconic ha
> > > > scritto:
> > > >
> > > > > On Tue, Jul 11, 2023 at 6:13 PM Clebert Suconic
> > > > > wrote:
> > > > > >
> > > > > > How tests are simulated within maven-surefire? is there any example?
> > > > >
> > > > > I mean... a test testing the test! Something that will call surefire
> > > > > and its unit tests and validate outcome?
> > > > >
> > > >
> > > > There are many integration tests in the surefire repository.
> > > > Initially it is not straightforward to understand but it works.
> > > > Unfortunately it passed some time since I wrote tests for surefire.
> > > >
> > > > I hope that others in this list my help
> > > >
> > > > Enrico
> > > >
> > > > >
> > > > > >
> > > > > > Would I be able to create an optional module where I do a test-leak
> > > > > > using my library to validate if it leaked or not?
> > > > > >
> > > > > > On Tue, Jul 11, 2023 at 5:33 PM Clebert Suconic
> > > > > > wrote:
> > > > > > >
> > > > > > > I tried looking at how I would contribute a fix, but I lacked an
> > > > > > > understanding on how tests are performed in surefire.
> > > > > > >
> > > > > > > Also: would you accept a test that's using check-leak to prevent
> > > > > > > future leaks like this? (maybe a separate sub-module for this
> > > > > > > test?)... and where I would add such test?
> > > > > > >
> > > > > > > I would even dedicate my personal time into proposing a fix if I
> > > > > > > can
> > > > > > > get some basic understanding about this.
> > > > > > >
> > > > > > >
> > > > > > > Is there a chat channel I can ask questions about the codebase? or
> > > > the
> > > > > > > user's or dev's list is a good place to start?
> > > > > > >
> > > > > > > On Tue, Jul 11, 2023 at 5:24 PM Enrico Olivelli
> > > > > > > > > > >
> > > > > wrote:
> > > > > > > >
> > > > > > > > Clebert,
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > Il Mar 11 Lug 2023, 15:55 Clebert Suconic <
> > > > clebert.suco...@gmail.com>
> > > > > ha
> > > > > > > > scritto:
> > > > > > > >
> > > > > > > > > created a JIRA:
> > > > > > > > >
> > > > > > > > > https://issues.apache.org/jira/browse/SUREFIRE-2186
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > Thanks.
> > > > > > > > Would you have time to contribute a fix?
> > > > > > > >
> > > > > > > > Enrico
> > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > On Tue, Jul 11, 2023 at 9:33 AM Clebert Suconic
> > > > > > > > > wrote:
> > > > > > > > > >
> > > > > > > > > > You guys need to be careful with non static ThreadLocals.
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > ClassMethodIndexer has a non static ThreadLocal.
> > > > > > > > > >
> > > > > > > > > > threadLocals will create a hashEntry somewhere deep in the
> > > > > > > > > > JDK.
> > > > > > > > > > Depending on the number of tests that are running you guys
> > > > > > > > > > may
> > > > > break
> > > > > > > > > > things like ReadWriteLock because it will transverse a lot
> > > > > > > > > > of
> > > > > entries.
> > > > > > > > > > (I have been bitten by this before).
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > Also, I have a reproducer:
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > git clone
> > > > > https://github.com/clebertsuconic/surefire-reproducer.git
> > > > > > > > > > cd surefire-reproducer
> > > > > > > > > > mvn install
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > >
> > > > > > > > > > This little project is using check-leak to count the number
> > > > > > > > > > of
> > > > > > > > > > instances of ClassObject