You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Howard M. Lewis Ship" <hl...@comcast.net> on 2003/11/29 15:58:15 UTC

RE: Tapestry / Junit / Maven

I've learned a lot about Maven from building HiveMind (that was part of the point). However, there's
a lot of downside to using Maven ... loss of control over behavior, shrinkage in the number of
people who can maintain the (Maven) build files, etc.  In addition, the best thing to do is to
radically reshuffle the directories to be more Maven-friendly ... which is complicated by the 3.1
branch which contains a partial refactoring of code out of Tapestry and into HiveMind.  So I want to
let sleeping dogs lie, at least until we get into 3.1.

I'm (you guessed it) mired in the book (and getting depressed about it again). I have a stack of
stuff to do when the book is more under control. I miss coding for fun.

I think this approach to junit is good for the meantime. I also want to break the jdom dependency
and use Digester instead:
- fewer dependencies
- much faster
- line precise error reporting of test failures
- easier to extend

Don't know if that will be in the 3.0 or 3.1 timeframe. We'll see how much time I have in december
2003.

--
Howard M. Lewis Ship
Creator, Tapestry: Java Web Components
http://jakarta.apache.org/tapestry
http://jakarta.apache.org/commons/sandbox/hivemind/
http://javatapestry.blogspot.com

> -----Original Message-----
> From: Mindbridge [mailto:mindbridgeweb@yahoo.com] 
> Sent: Saturday, November 29, 2003 6:36 AM
> To: Tapestry development
> Subject: Re: DO NOT REPLY [Bug 21871] - junit.jar needed to 
> build junit subproject, but not included or mentioned anywhere
> 
> 
> Hi Erik,
> 
> I have to say that personally I agree with you -- it seems to me the
> licenses are perfectly compatible, etc (but IANAL).
> 
> I was on 'sabbatical' for a couple of weeks, but before I 
> left I looked at
> the mailing list archives (jakarta-general, etc) for messages 
> discussing the
> topic as suggested by Danny Angus, and frankly, there did not 
> seem to be a
> clear and unified position on this issue. Given that during incubation
> Howard opted for leaving junit.jar and jdom-b8.jar outside 
> the repository,
> the adamant possition by some people that non-ASL code needs 
> to be kept out,
> the current license 'discussions' on the lists, the small 
> number of people
> who will build and test the framework, the simplicity of 
> "installing" a
> couple of files, etc, it seems to me that it simply makes 
> sense keep the
> status quo for the time being, even though it is not ideal. Hence the
> resolution I've put in and the documentation that has been checked in.
> 
> I guess that from this point we can do a number of things:
> 
> - Get an explicit approval from the Apache board that we can put those
> libraries in the repository in order to avoid any potential for future
> trouble. It would obviously be ideal if a person closer to 
> the board, such
> as Howard, could get this approval (or denial). Assuming that 
> they agree,
> this issue will be resolved altogether. Please note that I 
> have no idea how
> all this politics relates to the Ant project.
> 
> - Use the junit.jar that is provided by Ant (or Eclipse or 
> sth else) as you
> suggest. This is a reasonable solution, but unfortunately it will not
> resolve the matter fully, since the Tapestry unit tests also depend on
> jdom-b8.jar, and that is not present in those products. So 
> one would still
> have to download external files.
> (Btw, using <junit> would be quite neat :)
> 
> - Finish the 'mavenization' of Tapestry so that the build 
> automatically
> downloads those (and possibly other) files when needed. This 
> approach has
> multiple positive effects, especially now with the new 
> features in Maven
> that make it more suitable for use in Tapestry. The only 
> downside is that
> someone needs to define the configuration files :)
> 
> 
> In short, what was given is a stop-gap solution and hopefully 
> it will change
> in one of the ways described above.
> 
> I hope this makes sense...
> - mb
> 
> 
> ----- Original Message ----- 
> From: "Erik Hatcher" <er...@ehatchersolutions.com>
> To: "Tapestry development" <ta...@jakarta.apache.org>
> Sent: Saturday, November 29, 2003 11:53 AM
> Subject: Re: DO NOT REPLY [Bug 21871] - junit.jar needed to 
> build junit
> subproject, but not included or mentioned anywhere
> 
> 
> > > ------- Additional Comments From mindbridgeweb@yahoo.com  
> 2003-11-29
> > > 06:58 -------
> > > Unfortunately, discussions with the Apache group indicate that
> > > junit.jar should
> > > not be kept in the Jakarta CVS repository. The same applies to
> > > jdom-b8.jar
> > > which is also required to compile and run the Tapestry unit tests.
> >
> > I don't understand this.  junit.jar is perfectly fine to have in CVS
> > (we have it in Ant's CVS).  The way the Tapestry build.xml files use
> > it, though, require it to be in lib/ext which bugs me 
> because junit.jar
> > has to be in ANT_HOME/lib for <junit> to work anyway - so I 
> view it as
> > just a necessary piece of Ant itself.  One of these days 
> I'll refactor
> > Tapestry's build to use <junit> rather than <java> to run the unit
> > tests, which will allow for unit test reporting much nicer than just
> > the console output.
> >
> > Erik
> >
> >
> >
> >
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: 
> tapestry-dev-help@jakarta.apache.org
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org


RE: Tapestry / Junit / Maven

Posted by "Howard M. Lewis Ship" <hl...@comcast.net>.
I have a good idea of how to do it, basically treating the test scripts just like a page or
component specification; generating TestSpecification objects of some kind, then executing those
objects.  You can take a peek if you have the cycles, or leave it until december when I get a
breather from NLG.  

The intent is a new design to simplify a lot of things.

I really want to do is to capture System.out and System.err and redirect them to log files;
currently, when things go wrong (or even when exceptions are reported that are "ok, part of the
test") it all goes to the console, and it is hard to tell what output belongs to what test. I want
to implement individual log files for *each* test.

For 3.1 I really want to harden and otherwise improve the testing framework and make it part of the
Tapestry framework proper, so that Tapestry uers can leverage it for some or all of their
application testing.

--
Howard M. Lewis Ship
Creator, Tapestry: Java Web Components
http://jakarta.apache.org/tapestry
http://jakarta.apache.org/commons/sandbox/hivemind/
http://javatapestry.blogspot.com

> -----Original Message-----
> From: Erik Hatcher [mailto:erik@ehatchersolutions.com] 
> Sent: Saturday, November 29, 2003 10:38 AM
> To: Tapestry development
> Subject: Re: Tapestry / Junit / Maven
> 
> 
> On Saturday, November 29, 2003, at 09:58  AM, Howard M. Lewis Ship 
> wrote:
> > I think this approach to junit is good for the meantime. I 
> also want 
> > to break the jdom dependency
> > and use Digester instead:
> > - fewer dependencies
> > - much faster
> > - line precise error reporting of test failures
> > - easier to extend
> 
> I'll have a look at the JDOM -> Digester conversion and maybe 
> save you 
> some effort.
> 
> Get the book done!
> 
> 	Erik
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org


Re: Tapestry / Junit / Maven

Posted by Erik Hatcher <er...@ehatchersolutions.com>.
On Saturday, November 29, 2003, at 09:58  AM, Howard M. Lewis Ship 
wrote:
> I think this approach to junit is good for the meantime. I also want 
> to break the jdom dependency
> and use Digester instead:
> - fewer dependencies
> - much faster
> - line precise error reporting of test failures
> - easier to extend

I'll have a look at the JDOM -> Digester conversion and maybe save you 
some effort.

Get the book done!

	Erik


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org