Missed your first message with the output. If my memory serves me correctly, immunity to the jvm's reflection implementation was added in log4j 1.3. The tests for 1.2 need to be run on JDK 1.3. Alternatively, you can retrofit the immunity granting code from the 1.3 branch.

At 06:37 PM 6/2/2005, you wrote:

Mark,

The tests are supposed to be immune to variations in reflection implementation. Do you have the output of the failed test?


At 06:31 PM 6/2/2005, Mark Womack wrote:
Ant 1.6.4, jvm Sun 1.4.2_07 (though I think _06 has the same issue).  I
think I am using junit 1.3.8, but since there are no identifying marks in
the .jar file (annoying), it is hard to tell exactly.

I agree that the exact stack trace is going to be fragile, left to the whims
of the jvm reflection implementation and the underlying junit
implementation.

I am just trying to make sure that there is not something wacky with my
setup since I spent time upgrading it, etc.  I can always change the witness
files.

Maybe I should look at the Gump setup so that I can see why it is not
failing on these tests?

-Mark

> -----Original Message-----
> From: Curt Arnold [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, June 01, 2005 11:19 PM
> To: Log4J Developers List
> Subject: Re: JUnit Errors in 1.2.11 build
>
>
> On Jun 2, 2005, at 12:33 AM, Mark Womack wrote:
>
> > I am running the test cases against the 1.2.11 code, and the
> > minimum case fails right off the bat:
> >
> > Minimum:
> >    [junit] Running org.apache.log4j.MinimumTestCase
> >    [junit] Tests run: 1, Failures: 1, Errors: 0, Time elapsed:
> > 0.501 sec
> >    [junit] Testsuite: org.apache.log4j.MinimumTestCase
> >    [junit] Tests run: 1, Failures: 1, Errors: 0, Time elapsed:
> > 0.501 sec
> >    [junit] ------------- Standard Output ---------------
> >    [junit] Files [output/filtered] and [witness/simple] differ on
> > line 28
> >    [junit] One reads:  [       at
> > sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)].
> >    [junit] Other reads:[       at java.lang.reflect.Method.invoke
> > (Native Method)].
> >    [junit] ------------- ---------------- ---------------
>
>
> There are a couple of issues, your JVM uses 3 sun.reflect calls when
> the reference uses one java.lang.reflect call and Ant has added
> another layer.  If the number of calls in the stack were equal then
> it might be fairly simple to add another regex transform (like
> LineNumberFilter and AbsoluteDateTimeFilter) that would translate
> sun.reflect... into the same calls as in the witness file.  However,
> things probably get complicated by the mismatch in number of calls in
> the stack.  It might be possible to write a regex transform that
> matches one line and emits multiple lines which would suggest
> rewriting the witness file with the lengthier stack trace and then
> write a regex transform that converts the shorter into the longer one.
>
> I would think the Ant call depth would be constant for any particular
> version of Ant and am surprised that we haven't heard a complaint
> from Gump on that one.  The call stack on a reflecting method
> invocation is apparently and not surprising JVM specific.  The JUnit
> stack would also be subject to change but fortunately for this test,
> its depth doesn't appear to have changed.
>
> What JVM and Ant version are you using?
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

--
Ceki Gülcü

  The complete log4j manual: http://www.qos.ch/log4j/



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

--
Ceki Gülcü

  The complete log4j manual: http://www.qos.ch/log4j/



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to