harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nathan Beyer" <nbe...@kc.rr.com>
Subject RE: svn commit: r431219 - in /incubator/harmony/enhanced/classlib/trunk/modules/luni/src/test: api/ impl/ java/org/apache/harmony/luni/tests/java/lang/
Date Tue, 15 Aug 2006 03:24:15 GMT
> -----Original Message-----
> From: Stepan Mishura [mailto:stepan.mishura@gmail.com]
> Sent: Monday, August 14, 2006 10:00 PM
> To: harmony-dev@incubator.apache.org
> Subject: Re: svn commit: r431219 - in
> /incubator/harmony/enhanced/classlib/trunk/modules/luni/src/test: api/
> impl/ java/org/apache/harmony/luni/tests/java/lang/
> 
> On 8/15/06, Nathan Beyer wrote:
> >
> > > -----Original Message-----
> > > From: Stepan Mishura
> > > Sent: Monday, August 14, 2006 6:36 AM
> > > To: harmony-dev
> > > Subject: Re: svn commit: r431219 - in
> > > /incubator/harmony/enhanced/classlib/trunk/modules/luni/src/test: api/
> > > impl/ java/org/apache/harmony/luni/tests/java/lang/
> > >
> > > Hi Nathan,
> > >
> > > I saw that you've changed tests layout (consolidated) tests in luni
> > > module.
> > > But I don't understand what the purpose for the change. Is this a
> first
> > > step
> > > for migrating to TestNG? (May be I missed something important - sorry
> > for
> > > stupid question then.)
> >
> > No, I'm just trying to put all of the tests into what I would consider
> is
> > a
> > defacto standard "src/test/java" and "src/test/resources". The actual
> goal
> > of this consolidation is to pull together all of the duplicated tests
> and
> > similar tests. This is reducing the test run time for luni and making
> > patch
> > creation/application much easier. At the same time, I've been cleaning
> up
> > the tests so that those that don't run can be run and anything that
> > doesn't
> > run on a RI is fixed, so that it does.
> 
> 
> I agree with that tests layout in luni module is really confusing and it
> should be fixed.
> But I'd follow tests layout proposal [1] or discuss it here how luni tests
> will be reorganizaed.
> For example, I don't understand moving tests from 'api' and 'impl' to
> 'java'
> folder - how implementation specific tests are differ from implementation
> independent tests now? I guess that implementation specific tests ends
> with
> 'ImplTest', right? But why they are running together with implementation
> independent tests?

Right now and since the LUNI module has existed, there hasn't been any
difference between API tests, impl tests or any other tests. The only
separation there is now are tests that run and pass on classlib+j9 and those
that are excluded. Even the tests that are in the "tests.api" package don't
run on the RI -- it's about 50/50 right now. Note: there is ONE known
implementation specific test, which I created and that's
"org.apache.harmony.luni.tests.java.lang.CharacterImplTest".

If you look back in the version history, all of the tests were under
"src/test/java" at one point. I rearranged the folder to try out the
proposal, which is where the 'api' and 'impl' folders came from. I also
modified the build.xml to setup the multiple tests runs and everything that
was in 'src/test/java' and 'src/test/java/impl' was run considered a Harmony
implementation test.

I was waiting for a conclusion to come to the testing layout, but nothing
has happened so far and I wanted to move ahead with cleaning up the mess
that is currently the test case. As such, I decided to move forward with
some of the testing proposal (the package naming convention) and just keep
the folder layout simple by having just one folder. This greatly simplified
the code layout as well as the build script.

When an actual test scheme is finalized, we can move the tests to whatever
folder is appropriate. SVN handles file and folder moves extremely well and
tracks every change with ease.

Right now, what I'm trying to do is:
* Consolidate all LUNI tests into "org.apache.harmony.luni.tests.**".
* Get as many LUNI tests as possible to run on an RI JRE. Those that are
specific implementation tests will be segregated. I'd say we'd be lucky if
50% of the tests that are API tests actually pass on an RI JRE.

> 
> >
> > > BTW did we agree on that we won't follow directory-based tests layout
> > [1]?
> > > IMHO, not yet. IIRC we agreed that directory-based tests layout is not
> > > quite
> > > convenient for our needs and we'll try TestNG. But for me it doesn't
> > mean
> > > that we'll migrate to TestNG for sure. Also I assume that mixed
> approach
> > > (directory-based layout + annotations) is possible. So it is not time
> > for
> > > doing massive tests moves and merges.
> >
> > I've been watching the test layout/approach threads, but I haven't seen
> > anything substantial fall out. I'm still waiting to see a simple and
> clear
> > suggestion. In any case, the current state is, frankly, a bit of a mess
> > and
> > any cleanup can't hurt.
> 
> 
> Yes, I agree that clean up is required. But I'm not sure about changing
> tests layout. IMHO we should wait for results of tests layout/approach
> threads (Or it is possible to follow test layout proposal[1] - at least
> I'd
> follow section "Package and class names for different types of the
> tests".)

As I mentioned above, I am following the package and class naming
conventions. In fact a majority of the changes have been to consolidate the
duplicate tests into single tests under these naming conventions.

> 
> Additionally, I was trying the separated directory layout to see what it's
> > like and I can tell you first hand it's just not that great. It just
> adds
> > complexity in the repository and the build script. This may be needed
> for
> > some modules, but I don't see it as the norm. Also, I've been
> > experimenting
> > with just using plain-old JUnit TestSuites to separate pure-API tests
> from
> > implementation tests and it works very well. It works equally well for
> > creating a failing-tests test suite. It also seems to make the tests run
> > much faster, but I'm not sure why; maybe it's because Ant doesn't search
> > for
> > all tests, it just runs the single test that's an aggregate.
> >
> > >
> > > And the minor comment to the commit log. It says: "remove unused
> > folders".
> > > But there are a lot of other unrelated changes. Was it possible to
> make
> > > separate commits?
> >
> > This was a mistake. I accidentally committed extra files with that
> > revision.
> 
> 
> OK, no problem.
> 
> Thanks,
> Stepan.
> 
> [1]
> http://incubator.apache.org/harmony/subcomponents/classlibrary/testing.htm
> l
> 
> >
> > -----Original Message-----
> > From: ndbeyer@apache.org [mailto:ndbeyer@apache.org]
> > Sent: Monday, August 14, 2006 2:56 AM
> > To: harmony-commits@incubator.apache.org
> > Subject: svn commit: r431219 - in
> > /incubator/harmony/enhanced/classlib/trunk/modules/luni/src/test: api/
> > impl/
> > java/org/apache/harmony/luni/tests/java/lang/
> >
> > Author: ndbeyer
> > Date: Sun Aug 13 12:55:54 2006
> > New Revision: 431219
> >
> > URL: http://svn.apache.org/viewvc?rev=431219&view=rev
> > Log:
> > remove unused folders
> >
> > Removed:
> >     incubator/harmony/enhanced/classlib/trunk/modules/luni/src/test/api/
> >
> incubator/harmony/enhanced/classlib/trunk/modules/luni/src/test/impl/
> > Modified:
> >
> >
> incubator/harmony/enhanced/classlib/trunk/modules/luni/src/test/java/org/a
> > pache/harmony/luni/tests/java/lang/DoubleTest.java
> >
> >
> incubator/harmony/enhanced/classlib/trunk/modules/luni/src/test/java/org/a
> > pache/harmony/luni/tests/java/lang/SecurityManagerTest.java
> >
> >
> incubator/harmony/enhanced/classlib/trunk/modules/luni/src/test/java/org/a
> > pache/harmony/luni/tests/java/lang/ThreadGroupTest.java
> >
> > Modified:
> >
> incubator/harmony/enhanced/classlib/trunk/modules/luni/src/test/java/org/a
> > pache/harmony/luni/tests/java/lang/DoubleTest.java
> > URL:
> >
> http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/mod
> >
> ules/luni/src/test/java/org/apache/harmony/luni/tests/java/lang/DoubleTest
> > .java?rev=431219&r1=431218&r2=431219&view=diff
> >
> ==========================================================================
> > ====
> >
> >
> > ---
> >
> incubator/harmony/enhanced/classlib/trunk/modules/luni/src/test/java/org/a
> > pache/harmony/luni/tests/java/lang/DoubleTest.java
> > (original)
> > +++
> >
> incubator/harmony/enhanced/classlib/trunk/modules/luni/src/test/java/org/a
> > pache/harmony/luni/tests/java/lang/DoubleTest.java
> > Sun Aug 13 12:55:54 2006
> > @@ -441,7 +441,7 @@
> >       */
> >      public void test_parseDoubleLjava_lang_String() {
> >          assertEquals("Incorrect double returned, expected zero.", 0.0,
> > Double
> > -                .parseDouble("2.4703282292062327208828439643411e-
> 324"));
> > +                .parseDouble("2.4703282292062327208828439643411e-324"),
> > 0.0
> > );
> >          assertTrue("Incorrect double returned, expected minimum
> double.",
> > Double
> >                  .parseDouble("2.4703282292062327208828439643412e-324")
> ==
> > Double.MIN_VALUE);
> >
> >
> > Modified:
> >
> incubator/harmony/enhanced/classlib/trunk/modules/luni/src/test/java/org/a
> > pache/harmony/luni/tests/java/lang/SecurityManagerTest.java
> > <SNIP>
> >
> >
> > ------------------------------------------------------
> > Terms of use : http://incubator.apache.org/harmony/mailing.html
> > To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> > For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> 
> 
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org
> 
> 
> 
> 
> 
> --
> Thanks,
> Stepan Mishura
> Intel Middleware Products Division
> 
> ------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
> For additional commands, e-mail: harmony-dev-help@incubator.apache.org


---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Mime
View raw message