public inbox for mauve-discuss@sourceware.org
 help / color / mirror / Atom feed
From: Roman Kennke <roman@kennke.org>
To: David Gilbert <david.gilbert@object-refinery.com>,
	 classpath@gnu.org,   mauve-discuss@sourceware.org
Subject: Testing JDK bugs?
Date: Thu, 27 Jul 2006 09:49:00 -0000	[thread overview]
Message-ID: <44C88C1B.6000408@kennke.org> (raw)

Hi lists, hi David (you wrote most of the tests I'm gonna talk about..)

While trying to clean up some Mauve failures I came upon a couple of 
tests that fail on JDK because they test strictly against the spec where 
the JDK isn't as strict. This is mostly bounds checking, where the spec 
says throws BadLocationException if invalid or similar. I think the JDK 
simply doesn't perform explicit checks in the Content implementations. 
See for example the tests for GapContent and StringContent.

Now I am not sure how to handle this. I've commented these tests out 
locally, simply to avoid clutter in the Mauve output. The question is 
how to interpret the spec. Adding the throws BadLocationException does 
mean (to me) that the impl may or may not throw a BadLocationException, 
but the application should be prepared to deal with it anyways. 
Moreover, the throws BadLocationException is specified in the interface. 
The implementations are not required to throw the BadLocationException 
if they decide to deal with wrong input themselves. For instance, the 
GapContent implementation (ours as well as JDK) can very well handle 
Position outside the range, because it only calculates offsets.

The situation gets worse. There are a number of tests both in Mauve and 
in the Intel testsuite that actually test the JDK behaviour of _not_ 
throwing the BLE, sometimes indirectly (via a Document impl or so). So 
we can't get to fully PASS with Mauve.
We should decide if we want to test strict spec compliance or reference 
impl compatibility. So far the decisions in GNU Classpath have been made 
in favour of (bug-) compatibility over strict spec compliance, so I 
think we should do the same for Mauve.

Anyway, I think we should either disable the spec-compliance checks or 
the RI-compatibility checks or both in Mauve so that we have at least a 
chance to reach 100%.

Any opinions on that?

/Roman

             reply	other threads:[~2006-07-27  9:49 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-07-27  9:49 Roman Kennke [this message]
2006-07-27 13:08 ` David Gilbert
2006-07-27 14:56   ` Jeroen Frijters
2006-07-27 16:32     ` David Gilbert
2006-07-27 17:01     ` Andrew Haley
2006-07-28  7:56       ` Jeroen Frijters
2006-07-28 12:33         ` Sven de Marothy
2006-07-28 14:51         ` Tom Tromey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=44C88C1B.6000408@kennke.org \
    --to=roman@kennke.org \
    --cc=classpath@gnu.org \
    --cc=david.gilbert@object-refinery.com \
    --cc=mauve-discuss@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).