Home | About | Sematext search-lucene.com search-hadoop.com
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB
 Search Hadoop and all its subprojects:

Switch to Threaded View
Hadoop >> mail # dev >> making a hadoop-common test run if a property is set


Copy link to this message
-
Re: making a hadoop-common test run if a property is set
thanks, I'l; have a look. I've always wanted to add the notion of skipped
to test runs -all the way through to the XML and generated reports, but
you'd have to do a new junit runner for this and tweak the reporting code.
Which, if it involved going near maven source, is not something I am
prepared to do

On 14 December 2012 18:57, Colin McCabe <[EMAIL PROTECTED]> wrote:

> One approach we've taken in the past is making the junit test skip
> itself when some precondition is not true.  Then, we often create a
> property which people can use to cause the skipped tests to become a
> hard error.
>
> For example, all the tests that rely on libhadoop start with these lines:
>
> > @Test
> > public void myTest() {
> >    Assume.assumeTrue(NativeCodeLoader.isNativeCodeLoaded());
> >   ...
> > }
>
> This causes them to be silently skipped when libhadoop.so is not
> available or loaded (perhaps because it hasn't been built.)
>
> However, if you want to cause this to be a hard error, you simply run
> > mvn test -Drequire.test.libhadoop
>
> See TestHdfsNativeCodeLoader.java to see how this is implemented.
>
> The main idea is that your Jenkins build slaves use all the -Drequire
> lines, but people running tests locally are not inconvenienced by the
> need to build libhadoop.so in every case.  This is especially good
> because libhadoop.so isn't known to build on certain platforms like
> AIX, etc.  It seems to be a good tradeoff so far.  I imagine that s3
> could do something similar.
>
> cheers,
> Colin
>
>
> On Fri, Dec 14, 2012 at 9:56 AM, Steve Loughran <[EMAIL PROTECTED]>
> wrote:
> > The swiftfs tests need only to run if there's a target filesystem;
> copying
> > the s3/s3n tests, something like
> >
> >   <property>
> >     <name>test.fs.swift.name</name>
> >     <value>swift://your-object-store-herel/</value>
> >   </property>
> >
> > How does one actually go about making junit tests optional in mvn-land?
> > Should the probe/skip logic be in the code -which can make people think
> the
> > test passed when it didn't actually run? Or can I turn it on/off in
> maven?
> >
> > -steve
>
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB