This is the mail archive of the
mauve-discuss@sourceware.org
mailing list for the Mauve project.
Re: RFC: fix for Mauve test javax/swing/JTextArea/prefferedSize.java
Dr Andrew John Hughes wrote:
> On 17:09 Fri 02 Sep , Pavel Tisnovsky wrote:
>> Dr Andrew John Hughes wrote:
>>> On 16:17 Fri 02 Sep , Pavel Tisnovsky wrote:
>>>> Greetings,
>>>>
>>>> I think that the last 6 checks contained in Mauve test
>>>> "javax/swing/JTextArea/prefferedSize.java" should be changed. In the original
>>>> test, the preferred width of the JTextArea is compared with 100 pixels after
>>>> word line wrapping is enabled.
>>>>
>>>> But it does not make sense (IMHO) because the JTextArea contains only empty text
>>>> or some NL characters ('\n'), which means, that preferred and minimum width of
>>>> JTextArea should be 0 pixels, not 100 in both cases because empty text and NL
>>>> sequence has only some non-zero height, but zero width. This behaviour is
>>>> independent of auto wrapping and/or word wrapping.
>>>>
>>>> It's probably worth to add some check for preferred height.
>>>>
>>>> Here is proposed change to this test:
>>>>
>>>> --- preferredSize.java 2005-12-07 20:23:38.000000000 +0100
>>>> +++ prefferedsize.java 2011-09-02 16:02:00.000000000 +0200
>>>> @@ -51,14 +51,14 @@
>>>> ta2.setLineWrap(true);
>>>> ta2.setWrapStyleWord(true);
>>>>
>>>> - harness.check (ta2.getPreferredSize().width == 100);
>>>> - harness.check (view.getPreferredSpan(View.HORIZONTAL) == 100);
>>>> + harness.check (ta2.getPreferredSize().width == 0);
>>>> + harness.check (view.getPreferredSpan(View.HORIZONTAL) == 0);
>>>> ta2.setText("");
>>>> - harness.check (ta2.getPreferredSize().width == 100);
>>>> - harness.check (view.getPreferredSpan(View.HORIZONTAL) == 100);
>>>> + harness.check (ta2.getPreferredSize().width == 0);
>>>> + harness.check (view.getPreferredSpan(View.HORIZONTAL) == 0);
>>>> ta2.setText("\n\n\n\n\n\n\n\n\n");
>>>> - harness.check (ta2.getPreferredSize().width == 100);
>>>> - harness.check (view.getPreferredSpan(View.HORIZONTAL) == 100);
>>>> + harness.check (ta2.getPreferredSize().width == 0);
>>>> + harness.check (view.getPreferredSpan(View.HORIZONTAL) == 0);
>>>> }
>>>> catch (Exception e)
>>>> {
>>>> ~
>>>>
>>>> Is it possible to change this test case please?
>>>>
>>>> Cheers,
>>>> Pavel
>>> Do tests still pass with these changes?
>> yes
>
> On both OpenJDK and GNU Classpath?
They pass only on OpenJDK. On GNU Classpath (4.4.4), some tests failed
regardless of whether the patch has been applied or not. But the failures
occurred on previous test not touched by the patch:
ta2.setText("");
harness.check (ta2.getPreferredSize().width == 0);
harness.check (view.getPreferredSpan(View.HORIZONTAL) == 0);
ta2.setText("\n\n\n\n\n\n\n\n\n");
harness.check (ta2.getPreferredSize().width == 0);
harness.check (view.getPreferredSpan(View.HORIZONTAL) == 0);
before the line wrap & word wrap is enabled.
The proposed patch fixes other failures on OpenJDK & GNU Classpath too, ie:
OpenJDK: 6 failures -> 0 failures
GNU Classpath: 8 failures -> 2 failures
Pavel