<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.18.3">
</HEAD>
<BODY>
Jason, before I write the long reply - did you read the whole post?<BR>
Maybe it got lost in sauce sentences like this, so let me emphasisze it:<BR>
<BR>
Pull request 710 is the &quot;MULTIPLE SMALL MODULES&quot; way.<BR>
<BR>
Let me know if you don't agree so I can start explaining from the right angle.<BR>
<BR>
Ondra<BR>
<BR>
<BR>
<BR>
<BR>
<BR>
Jason T. Greene p&#237;&#353;e v &#218;t 22. 11. 2011 v 14:49 -0600:
<BLOCKQUOTE TYPE=CITE>
<PRE>
On 11/22/11 2:31 PM, Ond&#345;ej &#381;i&#382;ka wrote:
&gt; Hi,
&gt;
&gt; 1) Relevant resources:
&gt;
&gt; Tracking jira: <A HREF="https://issues.jboss.org/browse/AS7-2007">https://issues.jboss.org/browse/AS7-2007</A>
&gt; Requirements: <A HREF="http://community.jboss.org/wiki/ASTestsuiteRequirements">http://community.jboss.org/wiki/ASTestsuiteRequirements</A>
&gt; Docs: <A HREF="https://docs.jboss.org/author/display/AS71/Testsuite">https://docs.jboss.org/author/display/AS71/Testsuite</A>
&gt;
&gt;
&gt; 2) Modularization &amp; moving the test sources
&gt;
&gt;  &gt; This is one thing I am wondering. If we all agree that many smaller
&gt; modules is the way to go, since its the standard maven approach
&gt; (supported by all existing maven tools), and it solves that various
&gt; issues introduced by doing the grouping approach then maybe we should
&gt; just do one refactor instead of doing this one and refactoring it yet again?
&gt;
&gt; I'd like to see the problems with the solution in PR 710. Please send me
&gt; instructions how to check that the IDE has problems coping with test
&gt; sources on ../src/test/java.
&gt; (I don't know about Eclipse or IDEA, but NetBeans uses quite rational
&gt; approach, which is simply running Maven for the active module. Which works.
&gt; It works for smoke, for -DallTests if you add that param, and also when
&gt; running a single test. I haven't tried debugging yet but in worst case,
&gt; I'd run with -Ddebug and attach the debugger.
)

I think its the same issues Stuart already brought up a few weeks ago. 
One megaclasspath, larger build footprint, consistency with the modules 
directory etc.

&gt;
&gt;  &gt; I know you put a lot of effort into this, but there is a good chance
&gt; this may net less work in the end since we wont be constantly tweaking
&gt; this version.
&gt;
&gt; It's not like switching from version A to B1 or B2, it's like staying at
&gt; B (pull request 710) or going further to C (which would be moving
&gt; sources to modules).
&gt; This harness is quite ready for both alternatives.
&gt; The reason I am proposing this as an intermediate state is, as I
&gt; previously stated, merely technical: Moving thousands of files is a big
&gt; operation from SCM PoV, so I want to get this tests relocation get
&gt; merged as quickly as possible - i.e. move, test, make pull request, get
&gt; it reviewed and merged, at best in a single day, otherwise I'll drown
&gt; with new tests coming.

I guess I don't see what if anything in this pull we would want to keep 
if we went to a small module approach?

  Maybe you could explain that?

&gt;
&gt;  &gt; Or is there some set of requirements we have to meet ASAP that our
&gt; existing testsuite infrastructure doesnt cover?
&gt;
&gt; There are many problems - I've mentioned them before - like:
&gt; * Smoke profile can either be default and need to be disabled
&gt; explicitely for any other group; but in that case many people will
&gt; forget to disable it which causes inference with other profiles.
&gt; Or it would have to be defined explicitely - i.e. &quot;no smoke tests run by
&gt; default&quot;
&gt; * Huge unmaintainable pom.xml
&gt; * Impossible to define multiple groups

These all sound livable for awhile to me.

&gt; * Hard to separate web/full or even make all tests run with full
&gt; Etc etc. See the resources above, and the issues discussed on as7 list
&gt; recently.

This works today in master. I just added multiple executions.

&gt;
&gt;  &gt; Although the problem stuart brought up is that we can't have
&gt; different classpaths in a single testsrun.
&gt;  &gt; As an example compatibility tests would likley not be able to be ran
&gt; in this way.
&gt;
&gt; Compat tests are in different module anyway. This change is refactoring
&gt; the integration module. The testsuite/pom.xml is affected too but only
&gt; slightly - properties etc.
&gt; Do/will the integration submodules need different classpath? BTW slight
&gt; differences could be handled by tweaking deps in profiles.

Yeah so this is double maintenance, both of these have to be in sync right?

&gt;
&gt; Regarding moving the test sources - is there anyone seeing any advantage
&gt; in having them all in testsuite/integration/src/test/java ? It looked
&gt; quite ellegant solution but if there's really no one liking it, let's
&gt; move it :)
&lt;
&gt;
&gt; 3) Motivation driving the modularization
&gt;
&gt; In general, I'd like to:
&gt;
&gt; * Keep the number of modules at rational number - not fine-grained
&gt; (difficult pom.xml maintainance), but not keeping it all-in-one at all
&gt; costs (as it is now).
&gt; * Keep the pom.xml's easy to read and maintain - profiles interwoven
&gt; like a fancy bread isn't exactly something I'd like to add features to.
&gt; * Keep the pure maven api concise and locical. Please keep in mind that
&gt; some configs will need to be distributed across whole testsuite, and
&gt; _every_ config &quot;axis&quot; (databases, IPv6, security,...) will need to be
&gt; reflected in _every_ module. What's now few-lines pom.xml for each
&gt; module may become a big ball of mud, pulling in things from parent
&gt; pom.xml's.

Yeah i think referencing external files is a nice solution to this problem.


</PRE>
</BLOCKQUOTE>
</BODY>
</HTML>