public inbox for mauve-discuss@sourceware.org
 help / color / mirror / Atom feed
* Running Mauve tests with JUnit
@ 2006-03-06 17:05 David Gilbert
  2006-03-08 10:40 ` David Gilbert
  0 siblings, 1 reply; 5+ messages in thread
From: David Gilbert @ 2006-03-06 17:05 UTC (permalink / raw)
  To: mauve-patches; +Cc: Mauve News Group

Hi All,

A while back there was some discussion about converting Mauve tests to 
run under JUnit.  I did some experimentation and have put together the 
following patch that shows one approach to making this work.  I created 
a new JUnitRunnable class which makes it possible to run a Mauve testlet 
under JUnit (as well as continuing to support the standard Mauve 
runners).  It requires that the existing testlets be modified to 'extend 
JUnitRunnable' (or, where this isn't possible, an alternative 
JUnitWrapper class can be used, see AttributeSetTests.java for an 
example).  The patch includes conversion of the tests in the 
javax.swing.text.* package so you can at least try it out - if this 
patch is approved, I also have done the conversion of all the Swing 
tests (roughly 25% of Mauve I think).

Here is a link to the patch, it's probably over the size limit for the 
mailing list (the ChangeLog entry is at the end of this e-mail):

http://www.object-refinery.com/classpath/diff.txt

I'm actually indifferent about whether or not this patch is accepted, I 
find Mauve slightly easier to work with relative to JUnit for the type 
of tests we write for GNU Classpath and plan to continue writing tests 
in the Mauve format.  Anyway, here's the pros and cons that I can think 
of, please feel free to add to the list:

Pros:
- JUnit is integrated with Eclipse, so it can be used to run Mauve tests 
easily for developers that work in Eclipse;
- most Java developers are familiar with JUnit, so Mauve may reach a 
wider audience;
- other tools can work with JUnit (although I haven't used any of them - 
does anyone know of a JUnit runner that can produce comparisons of two 
runs? I'm interested in (a) regression reports (e.g. CVS vs last 
release) and (b) comparison reports (GNU Classpath vs Sun JDK1.5));

Cons:
- a lot of work to modify the remaining tests in Mauve;
- one extra step to make Mauve tests that run with both JUnit and Mauve 
test runners - it's pretty easy, but still a mental step that new 
contributors to Mauve will have to learn;
- there is a possibility that some developers will write new tests 
against JUnit only, so we'll lose the ability to run all tests with the 
Mauve runners (which I think provide better detail on failures);

Oh, and someone mentioned that the JUnit licence is not GPL compatible, 
so I compiled the tests against the GPLed code here:

http://cvs.sourceforge.net/viewcvs.py/freenet/Contrib/junit/

I had to add a no-arg constructor for the TestCase class, then the tests 
compiled OK.  And I can use the SimpleTestRunner to run a single test 
(this could do with some more work though).

Please comment!

Regards,

Dave

P.S. Here is the ChangeLog entry:

2006-03-06  David Gilbert  <david.gilbert@object-refinery.com>

    * gnu/testlet/JUnitRunnable.java: New file,
    * gnu/testlet/JUnitTestHarness.java: Likewise,
    * gnu/testlet/JUnitTestWrapper.java: Likewise,
    * gnu/testlet/JUnitWrapper.java: Likewise,
    * gnu/testlet/javax/swing/text/PackageTestSuite.java: Likewise,
    * 
gnu/testlet/javax/swing/text/AbstractDocument/AbstractDocumentTest.java: 
Now extends JUnitRunnable,
    * 
gnu/testlet/javax/swing/text/AbstractDocument/AbstractDocumentTests.java: 
New file,
    * gnu/testlet/javax/swing/text/AbstractDocument/ElementChange.java: 
Now extends JUnitRunnable,
    * gnu/testlet/javax/swing/text/AbstractDocument/ElementChange2.java: 
Likewise,
    * 
gnu/testlet/javax/swing/text/AbstractDocument/BranchElement/BranchElementTest.java: 
Updated header,
    * 
gnu/testlet/javax/swing/text/AbstractDocument/BranchElement/BranchElementTests.java: 
New file,
    * 
gnu/testlet/javax/swing/text/AbstractDocument/BranchElement/getElementIndexNullPointer.java: 
Now extends JUnitRunnable,
    * gnu/testlet/javax/swing/text/AttributeSet/AttributeSetTests.java: 
New file,
    * gnu/testlet/javax/swing/text/BoxView/BoxViewTests.java: Likewise,
    * gnu/testlet/javax/swing/text/BoxView/spans.java: Now extends 
JUnitRunnable,
    * 
gnu/testlet/javax/swing/text/DefaultEditorKit/DefaultEditorKitTests.java: 
New file,
    * gnu/testlet/javax/swing/text/DefaultEditorKit/getActions.java: Now 
extends JUnitRunnable,
    * 
gnu/testlet/javax/swing/text/DefaultFormatter/DefaultFormatterTests.java: 
New file,
    * gnu/testlet/javax/swing/text/DefaultFormatter/getValueClass.java: 
Now extends JUnitRunnable,
    * 
gnu/testlet/javax/swing/text/DefaultStyledDocument/DefaultStyledDocumentTests.java: 
New file,
    * 
gnu/testlet/javax/swing/text/DefaultStyledDocument/insertString.java: 
Now extends JUnitRunnable,
    * 
gnu/testlet/javax/swing/text/DefaultStyledDocument/ElementBuffer/ElementBufferTests.java: 
New file,
    * 
gnu/testlet/javax/swing/text/DefaultStyledDocument/ElementBuffer/insert.java: 
Now extends JUnitRunnable,
    * 
gnu/testlet/javax/swing/text/ElementIterator/ElementIteratorTest.java: 
Likewise,
    * 
gnu/testlet/javax/swing/text/ElementIterator/ElementIteratorTests.java: 
New file,
    * gnu/testlet/javax/swing/text/FlowView/FlowViewTests.java: New file,
    * gnu/testlet/javax/swing/text/FlowView/getFlowAxis.java: Now 
extends JUnitRunnable,
    * gnu/testlet/javax/swing/text/GapContent/GapContentTest.java: Likewise,
    * gnu/testlet/javax/swing/text/GapContent/GapContentTests.java: New 
file,
    * gnu/testlet/javax/swing/text/GapContent/PositionTest.java: Now 
extends JUnitRunnable,
    * gnu/testlet/javax/swing/text/GapContent/constructors.java: Likewise,
    * gnu/testlet/javax/swing/text/GapContent/createPosition.java: Likewise,
    * gnu/testlet/javax/swing/text/GapContent/getChars.java: Likewise,
    * gnu/testlet/javax/swing/text/GapContent/getString.java: Likewise,
    * gnu/testlet/javax/swing/text/GapContent/insertString.java: Likewise,
    * gnu/testlet/javax/swing/text/GapContent/length.java: Likewise,
    * gnu/testlet/javax/swing/text/GapContent/remove.java: Likewise,
    * 
gnu/testlet/javax/swing/text/InternationalFormatter/InternationalFormatterTest.java: 
Likewise,
    * 
gnu/testlet/javax/swing/text/InternationalFormatter/InternationalFormatterTests.java: 
New file,
    * gnu/testlet/javax/swing/text/MaskFormatter/MaskFormatterTest.java: 
Now extends JUnitRunnable,
    * 
gnu/testlet/javax/swing/text/MaskFormatter/MaskFormatterTests.java: New 
file,
    * gnu/testlet/javax/swing/text/PlainDocument/PlainDocumentTest.java: 
Now extends JUnitRunnable,
    * 
gnu/testlet/javax/swing/text/PlainDocument/PlainDocumentTests.java: New 
file,
    * gnu/testlet/javax/swing/text/PlainDocument/createPosition.java: 
Now extends JUnitRunnable,
    * gnu/testlet/javax/swing/text/PlainDocument/getLength.java: Likewise,
    * gnu/testlet/javax/swing/text/PlainDocument/getRootElements.java: 
Likewise,
    * gnu/testlet/javax/swing/text/PlainDocument/getText.java: Likewise,
    * gnu/testlet/javax/swing/text/PlainDocument/insertString.java: 
Likewise,
    * gnu/testlet/javax/swing/text/PlainDocument/multipleLeafs.java: 
Likewise,
    * gnu/testlet/javax/swing/text/PlainDocument/remove.java: Likewise,
    * gnu/testlet/javax/swing/text/PlainDocument/removeJoinesLines.java: 
Likewise,
    * gnu/testlet/javax/swing/text/Segment/SegmentTests.java: New file,
    * gnu/testlet/javax/swing/text/Segment/clone.java: Now extends 
JUnitRunnable,
    * gnu/testlet/javax/swing/text/Segment/constructors.java: Likewise,
    * gnu/testlet/javax/swing/text/Segment/first.java: Likewise,
    * gnu/testlet/javax/swing/text/Segment/getBeginIndex.java: Likewise,
    * gnu/testlet/javax/swing/text/Segment/getEndIndex.java: Likewise,
    * gnu/testlet/javax/swing/text/Segment/getIndex.java: Likewise,
    * gnu/testlet/javax/swing/text/Segment/isPartialReturn.java: Likewise,
    * gnu/testlet/javax/swing/text/Segment/last.java: Likewise,
    * gnu/testlet/javax/swing/text/Segment/next.java: Likewise,
    * gnu/testlet/javax/swing/text/Segment/previous.java: Likewise,
    * gnu/testlet/javax/swing/text/Segment/setIndex.java: Likewise,
    * gnu/testlet/javax/swing/text/Segment/setPartialReturn.java: Likewise,
    * gnu/testlet/javax/swing/text/Segment/toString(), Likewise,
    * 
gnu/testlet/javax/swing/text/SimpleAttributeSet/SimpleAttributeSetTests.java: 
New file,
    * 
gnu/testlet/javax/swing/text/StringContent/BadLocationExceptionTest.java: 
Now extends JUnitRunnable,
    * gnu/testlet/javax/swing/text/StringContent/StringContentTest.java: 
Likewise,
    * 
gnu/testlet/javax/swing/text/StringContent/StringContentTests.java: New 
file,
    * gnu/testlet/javax/swing/text/StringContent/constructors.java: Now 
extends JUnitRunnable,
    * gnu/testlet/javax/swing/text/StringContent/createPosition.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StringContent/getChars.java: Likewise,
    * gnu/testlet/javax/swing/text/StringContent/getString.java: Likewise,
    * gnu/testlet/javax/swing/text/StringContent/insertString.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StringContent/insertUndo.java: Likewise,
    * gnu/testlet/javax/swing/text/StringContent/length.java: Likewise,
    * gnu/testlet/javax/swing/text/StringContent/remove.java: Likewise,
    * gnu/testlet/javax/swing/text/StringContent/removeUndo.java: Likewise,
    * gnu/testlet/javax/swing/text/StringContent/stickyPosition.java: 
Likewise,
    * 
gnu/testlet/javax/swing/text/StyleConstants/StyleConstantsTests.java: 
New file,
    * gnu/testlet/javax/swing/text/StyleConstants/constants.java: Now 
extends JUnitRunnable,
    * gnu/testlet/javax/swing/text/StyleConstants/getAlignment.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/getBackground.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/getBidiLevel.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/getComponent.java: 
Likewise,
    * 
gnu/testlet/javax/swing/text/StyleConstants/getFirstLineIndent.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/getFontFamily.java: 
Liekwise,
    * gnu/testlet/javax/swing/text/StyleConstants/getFontSize.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/getForeground.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/getIcon.java: Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/getLeftIndent.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/getLineSpacing.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/getRightIndent.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/getSpaceAbove.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/getSpaceBelow.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/getTabSet.java: Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/isBold.java: Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/isItalic.java: Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/isStrikeThrough.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/isSubscript.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/isSuperscript.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/isUnderline.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setAlignment.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setBackground.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setBidiLevel.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setBold.java: Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setComponent.java: 
Likewise,
    * 
gnu/testlet/javax/swing/text/StyleConstants/setFirstLineIndent.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setFontFamily.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setFontSize.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setForeground.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setIcon.java: Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setItalic.java: Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setLeftIndent.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setLineSpacing.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setRightIndent.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setSpaceAbove.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setSpaceBelow.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setStrikeThrough.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setSubscript.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setSuperscript.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setTabSet.java: Likewise,
    * gnu/testlet/javax/swing/text/StyleConstants/setUnderline.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleContext/NamedStyleInit.java: 
Likewise,
    * 
gnu/testlet/javax/swing/text/StyleContext/NamedStyleSetResolveParent.java: 
Likewise,
    * gnu/testlet/javax/swing/text/StyleContext/StyleContextTests.java: 
New file,
    * gnu/testlet/javax/swing/text/StyleContext/addAttribute.java: Now 
extends JUnitRunnable,
    * gnu/testlet/javax/swing/text/StyleContext/addStyle.java: Likewise,
    * 
gnu/testlet/javax/swing/text/StyledEditorKit/StyledEditorKitTests.java: 
New file,
    * 
gnu/testlet/javax/swing/text/StyledEditorKit/createInputAttributesTest.java: 
Now extends JUnitRunnable,
    * gnu/testlet/javax/swing/text/TextAction/TextActionTests.java: New 
file,
    * gnu/testlet/javax/swing/text/TextAction/augmentList.java: Now 
extends JUnitRunnable,
    * gnu/testlet/javax/swing/text/View/ViewTests.java: New file,
    * gnu/testlet/javax/swing/text/View/getAlignment.java: Now extends 
JUnitRunnable,
    * gnu/testlet/javax/swing/text/View/getMaximumSpan.java: Likewise,
    * gnu/testlet/javax/swing/text/View/getMinimumSpan.java: Likewise,
    * gnu/testlet/javax/swing/text/View/getResizeWeight.java: Likewise.   

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Running Mauve tests with JUnit
  2006-03-06 17:05 Running Mauve tests with JUnit David Gilbert
@ 2006-03-08 10:40 ` David Gilbert
  2006-03-08 11:08   ` Michael Koch
       [not found]   ` <20060308120721.GA7569@pogo.kaffe.org>
  0 siblings, 2 replies; 5+ messages in thread
From: David Gilbert @ 2006-03-08 10:40 UTC (permalink / raw)
  To: mauve-patches, Mauve News Group

I didn't get any feedback about this...anyone think it is a good/bad idea?

Regards,

Dave

David Gilbert wrote:

> Hi All,
>
> A while back there was some discussion about converting Mauve tests to 
> run under JUnit.  I did some experimentation and have put together the 
> following patch that shows one approach to making this work.  I 
> created a new JUnitRunnable class which makes it possible to run a 
> Mauve testlet under JUnit (as well as continuing to support the 
> standard Mauve runners).  It requires that the existing testlets be 
> modified to 'extend JUnitRunnable' (or, where this isn't possible, an 
> alternative JUnitWrapper class can be used, see AttributeSetTests.java 
> for an example).  The patch includes conversion of the tests in the 
> javax.swing.text.* package so you can at least try it out - if this 
> patch is approved, I also have done the conversion of all the Swing 
> tests (roughly 25% of Mauve I think).
>
> Here is a link to the patch, it's probably over the size limit for the 
> mailing list (the ChangeLog entry is at the end of this e-mail):
>
> http://www.object-refinery.com/classpath/diff.txt
>
> I'm actually indifferent about whether or not this patch is accepted, 
> I find Mauve slightly easier to work with relative to JUnit for the 
> type of tests we write for GNU Classpath and plan to continue writing 
> tests in the Mauve format.  Anyway, here's the pros and cons that I 
> can think of, please feel free to add to the list:
>
> Pros:
> - JUnit is integrated with Eclipse, so it can be used to run Mauve 
> tests easily for developers that work in Eclipse;
> - most Java developers are familiar with JUnit, so Mauve may reach a 
> wider audience;
> - other tools can work with JUnit (although I haven't used any of them 
> - does anyone know of a JUnit runner that can produce comparisons of 
> two runs? I'm interested in (a) regression reports (e.g. CVS vs last 
> release) and (b) comparison reports (GNU Classpath vs Sun JDK1.5));
>
> Cons:
> - a lot of work to modify the remaining tests in Mauve;
> - one extra step to make Mauve tests that run with both JUnit and 
> Mauve test runners - it's pretty easy, but still a mental step that 
> new contributors to Mauve will have to learn;
> - there is a possibility that some developers will write new tests 
> against JUnit only, so we'll lose the ability to run all tests with 
> the Mauve runners (which I think provide better detail on failures);
>
> Oh, and someone mentioned that the JUnit licence is not GPL 
> compatible, so I compiled the tests against the GPLed code here:
>
> http://cvs.sourceforge.net/viewcvs.py/freenet/Contrib/junit/
>
> I had to add a no-arg constructor for the TestCase class, then the 
> tests compiled OK.  And I can use the SimpleTestRunner to run a single 
> test (this could do with some more work though).
>
> Please comment!
>
> Regards,
>
> Dave
>
> P.S. Here is the ChangeLog entry:
>
> 2006-03-06  David Gilbert  <david.gilbert@object-refinery.com>
>
>    * gnu/testlet/JUnitRunnable.java: New file,
>    * gnu/testlet/JUnitTestHarness.java: Likewise,
>    * gnu/testlet/JUnitTestWrapper.java: Likewise,
>    * gnu/testlet/JUnitWrapper.java: Likewise,
>    * gnu/testlet/javax/swing/text/PackageTestSuite.java: Likewise,
>    * 
> gnu/testlet/javax/swing/text/AbstractDocument/AbstractDocumentTest.java: 
> Now extends JUnitRunnable,
>    * 
> gnu/testlet/javax/swing/text/AbstractDocument/AbstractDocumentTests.java: 
> New file,
>    * gnu/testlet/javax/swing/text/AbstractDocument/ElementChange.java: 
> Now extends JUnitRunnable,
>    * 
> gnu/testlet/javax/swing/text/AbstractDocument/ElementChange2.java: 
> Likewise,
>    * 
> gnu/testlet/javax/swing/text/AbstractDocument/BranchElement/BranchElementTest.java: 
> Updated header,
>    * 
> gnu/testlet/javax/swing/text/AbstractDocument/BranchElement/BranchElementTests.java: 
> New file,
>    * 
> gnu/testlet/javax/swing/text/AbstractDocument/BranchElement/getElementIndexNullPointer.java: 
> Now extends JUnitRunnable,
>    * gnu/testlet/javax/swing/text/AttributeSet/AttributeSetTests.java: 
> New file,
>    * gnu/testlet/javax/swing/text/BoxView/BoxViewTests.java: Likewise,
>    * gnu/testlet/javax/swing/text/BoxView/spans.java: Now extends 
> JUnitRunnable,
>    * 
> gnu/testlet/javax/swing/text/DefaultEditorKit/DefaultEditorKitTests.java: 
> New file,
>    * gnu/testlet/javax/swing/text/DefaultEditorKit/getActions.java: 
> Now extends JUnitRunnable,
>    * 
> gnu/testlet/javax/swing/text/DefaultFormatter/DefaultFormatterTests.java: 
> New file,
>    * gnu/testlet/javax/swing/text/DefaultFormatter/getValueClass.java: 
> Now extends JUnitRunnable,
>    * 
> gnu/testlet/javax/swing/text/DefaultStyledDocument/DefaultStyledDocumentTests.java: 
> New file,
>    * 
> gnu/testlet/javax/swing/text/DefaultStyledDocument/insertString.java: 
> Now extends JUnitRunnable,
>    * 
> gnu/testlet/javax/swing/text/DefaultStyledDocument/ElementBuffer/ElementBufferTests.java: 
> New file,
>    * 
> gnu/testlet/javax/swing/text/DefaultStyledDocument/ElementBuffer/insert.java: 
> Now extends JUnitRunnable,
>    * 
> gnu/testlet/javax/swing/text/ElementIterator/ElementIteratorTest.java: 
> Likewise,
>    * 
> gnu/testlet/javax/swing/text/ElementIterator/ElementIteratorTests.java: 
> New file,
>    * gnu/testlet/javax/swing/text/FlowView/FlowViewTests.java: New file,
>    * gnu/testlet/javax/swing/text/FlowView/getFlowAxis.java: Now 
> extends JUnitRunnable,
>    * gnu/testlet/javax/swing/text/GapContent/GapContentTest.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/GapContent/GapContentTests.java: New 
> file,
>    * gnu/testlet/javax/swing/text/GapContent/PositionTest.java: Now 
> extends JUnitRunnable,
>    * gnu/testlet/javax/swing/text/GapContent/constructors.java: Likewise,
>    * gnu/testlet/javax/swing/text/GapContent/createPosition.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/GapContent/getChars.java: Likewise,
>    * gnu/testlet/javax/swing/text/GapContent/getString.java: Likewise,
>    * gnu/testlet/javax/swing/text/GapContent/insertString.java: Likewise,
>    * gnu/testlet/javax/swing/text/GapContent/length.java: Likewise,
>    * gnu/testlet/javax/swing/text/GapContent/remove.java: Likewise,
>    * 
> gnu/testlet/javax/swing/text/InternationalFormatter/InternationalFormatterTest.java: 
> Likewise,
>    * 
> gnu/testlet/javax/swing/text/InternationalFormatter/InternationalFormatterTests.java: 
> New file,
>    * 
> gnu/testlet/javax/swing/text/MaskFormatter/MaskFormatterTest.java: Now 
> extends JUnitRunnable,
>    * 
> gnu/testlet/javax/swing/text/MaskFormatter/MaskFormatterTests.java: 
> New file,
>    * 
> gnu/testlet/javax/swing/text/PlainDocument/PlainDocumentTest.java: Now 
> extends JUnitRunnable,
>    * 
> gnu/testlet/javax/swing/text/PlainDocument/PlainDocumentTests.java: 
> New file,
>    * gnu/testlet/javax/swing/text/PlainDocument/createPosition.java: 
> Now extends JUnitRunnable,
>    * gnu/testlet/javax/swing/text/PlainDocument/getLength.java: Likewise,
>    * gnu/testlet/javax/swing/text/PlainDocument/getRootElements.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/PlainDocument/getText.java: Likewise,
>    * gnu/testlet/javax/swing/text/PlainDocument/insertString.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/PlainDocument/multipleLeafs.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/PlainDocument/remove.java: Likewise,
>    * 
> gnu/testlet/javax/swing/text/PlainDocument/removeJoinesLines.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/Segment/SegmentTests.java: New file,
>    * gnu/testlet/javax/swing/text/Segment/clone.java: Now extends 
> JUnitRunnable,
>    * gnu/testlet/javax/swing/text/Segment/constructors.java: Likewise,
>    * gnu/testlet/javax/swing/text/Segment/first.java: Likewise,
>    * gnu/testlet/javax/swing/text/Segment/getBeginIndex.java: Likewise,
>    * gnu/testlet/javax/swing/text/Segment/getEndIndex.java: Likewise,
>    * gnu/testlet/javax/swing/text/Segment/getIndex.java: Likewise,
>    * gnu/testlet/javax/swing/text/Segment/isPartialReturn.java: Likewise,
>    * gnu/testlet/javax/swing/text/Segment/last.java: Likewise,
>    * gnu/testlet/javax/swing/text/Segment/next.java: Likewise,
>    * gnu/testlet/javax/swing/text/Segment/previous.java: Likewise,
>    * gnu/testlet/javax/swing/text/Segment/setIndex.java: Likewise,
>    * gnu/testlet/javax/swing/text/Segment/setPartialReturn.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/Segment/toString(), Likewise,
>    * 
> gnu/testlet/javax/swing/text/SimpleAttributeSet/SimpleAttributeSetTests.java: 
> New file,
>    * 
> gnu/testlet/javax/swing/text/StringContent/BadLocationExceptionTest.java: 
> Now extends JUnitRunnable,
>    * 
> gnu/testlet/javax/swing/text/StringContent/StringContentTest.java: 
> Likewise,
>    * 
> gnu/testlet/javax/swing/text/StringContent/StringContentTests.java: 
> New file,
>    * gnu/testlet/javax/swing/text/StringContent/constructors.java: Now 
> extends JUnitRunnable,
>    * gnu/testlet/javax/swing/text/StringContent/createPosition.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StringContent/getChars.java: Likewise,
>    * gnu/testlet/javax/swing/text/StringContent/getString.java: Likewise,
>    * gnu/testlet/javax/swing/text/StringContent/insertString.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StringContent/insertUndo.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StringContent/length.java: Likewise,
>    * gnu/testlet/javax/swing/text/StringContent/remove.java: Likewise,
>    * gnu/testlet/javax/swing/text/StringContent/removeUndo.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StringContent/stickyPosition.java: 
> Likewise,
>    * 
> gnu/testlet/javax/swing/text/StyleConstants/StyleConstantsTests.java: 
> New file,
>    * gnu/testlet/javax/swing/text/StyleConstants/constants.java: Now 
> extends JUnitRunnable,
>    * gnu/testlet/javax/swing/text/StyleConstants/getAlignment.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/getBackground.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/getBidiLevel.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/getComponent.java: 
> Likewise,
>    * 
> gnu/testlet/javax/swing/text/StyleConstants/getFirstLineIndent.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/getFontFamily.java: 
> Liekwise,
>    * gnu/testlet/javax/swing/text/StyleConstants/getFontSize.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/getForeground.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/getIcon.java: Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/getLeftIndent.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/getLineSpacing.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/getRightIndent.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/getSpaceAbove.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/getSpaceBelow.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/getTabSet.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/isBold.java: Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/isItalic.java: Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/isStrikeThrough.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/isSubscript.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/isSuperscript.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/isUnderline.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setAlignment.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setBackground.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setBidiLevel.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setBold.java: Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setComponent.java: 
> Likewise,
>    * 
> gnu/testlet/javax/swing/text/StyleConstants/setFirstLineIndent.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setFontFamily.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setFontSize.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setForeground.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setIcon.java: Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setItalic.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setLeftIndent.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setLineSpacing.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setRightIndent.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setSpaceAbove.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setSpaceBelow.java: 
> Likewise,
>    * 
> gnu/testlet/javax/swing/text/StyleConstants/setStrikeThrough.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setSubscript.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setSuperscript.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setTabSet.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleConstants/setUnderline.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleContext/NamedStyleInit.java: 
> Likewise,
>    * 
> gnu/testlet/javax/swing/text/StyleContext/NamedStyleSetResolveParent.java: 
> Likewise,
>    * gnu/testlet/javax/swing/text/StyleContext/StyleContextTests.java: 
> New file,
>    * gnu/testlet/javax/swing/text/StyleContext/addAttribute.java: Now 
> extends JUnitRunnable,
>    * gnu/testlet/javax/swing/text/StyleContext/addStyle.java: Likewise,
>    * 
> gnu/testlet/javax/swing/text/StyledEditorKit/StyledEditorKitTests.java: 
> New file,
>    * 
> gnu/testlet/javax/swing/text/StyledEditorKit/createInputAttributesTest.java: 
> Now extends JUnitRunnable,
>    * gnu/testlet/javax/swing/text/TextAction/TextActionTests.java: New 
> file,
>    * gnu/testlet/javax/swing/text/TextAction/augmentList.java: Now 
> extends JUnitRunnable,
>    * gnu/testlet/javax/swing/text/View/ViewTests.java: New file,
>    * gnu/testlet/javax/swing/text/View/getAlignment.java: Now extends 
> JUnitRunnable,
>    * gnu/testlet/javax/swing/text/View/getMaximumSpan.java: Likewise,
>    * gnu/testlet/javax/swing/text/View/getMinimumSpan.java: Likewise,
>    * gnu/testlet/javax/swing/text/View/getResizeWeight.java: Likewise.  
>
>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Running Mauve tests with JUnit
  2006-03-08 10:40 ` David Gilbert
@ 2006-03-08 11:08   ` Michael Koch
       [not found]   ` <20060308120721.GA7569@pogo.kaffe.org>
  1 sibling, 0 replies; 5+ messages in thread
From: Michael Koch @ 2006-03-08 11:08 UTC (permalink / raw)
  To: David Gilbert; +Cc: mauve-patches, Mauve News Group

On Wed, Mar 08, 2006 at 10:40:55AM +0000, David Gilbert wrote:
> I didn't get any feedback about this...anyone think it is a good/bad idea?

I think this is a good idea. JUnit is widely known and supported well by
IDEs. Please go ahead.


Cheers,
Michael
-- 
Escape the Java Trap with GNU Classpath!
http://www.gnu.org/philosophy/java-trap.html

Join the community at http://planet.classpath.org/

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Running Mauve tests with JUnit
       [not found]   ` <20060308120721.GA7569@pogo.kaffe.org>
@ 2006-03-08 13:21     ` David Gilbert
  2006-03-08 19:07       ` Dalibor Topic
  0 siblings, 1 reply; 5+ messages in thread
From: David Gilbert @ 2006-03-08 13:21 UTC (permalink / raw)
  To: Dalibor Topic; +Cc: classpath, mauve-discuss, mauve-patches

Hi Dalibor,

I had meant to keep this on the Mauve lists, but I'll reply to the 
Classpath list also...

Dalibor Topic wrote:

>On Wed, Mar 08, 2006 at 10:40:55AM +0000, David Gilbert wrote:
>  
>
>>I didn't get any feedback about this...anyone think it is a good/bad idea?
>>    
>>
>excellent idea in my opinion. Have you looked at graydon's junit mauve
>bridge at
>http://sources.redhat.com/ml/mauve-discuss/2003-q4/msg00003.html ?
>
>  
>
I hadn't seen Graydon's bridge class, thanks for the link (and I should 
do more research next time).  Looking over it, it has the advantage that 
it doesn't require any existing Mauve testlets to be modified (and we 
have a lot of testlets), but the disadvantage that it doesn't buy you 
much in terms of integration with IDEs (you still have to generate the 
test list ['classes'] file, for instance, which is the major stumbling 
block that people seem to have when trying to run Mauve). 

By modifying the Mauve testlets in the way that I proposed, you can (for 
example) run a single test in Eclipse just by selecting the source file 
and clicking 'Run as --> JUnit test'.  I figured that was the sort of 
thing people were expecting.

JUnit does seem to me to be less flexible in terms of selecting subsets 
of tests, and it's approach of reporting a pass/fail for each test 
method (only) makes it, in my opinion, less suitable for the type of 
testing we are doing on GNU Classpath.  But I was careful in the 
"conversion" to retain the Mauve testlets so that we can continue 
running the tests in the traditional (Mauve) way.

>If we do something like that. I'd like to see the junit code from
>freenet merged in, to keep it simple to run mauve without external
>dependencies.
>  
>
Agreed.  I didn't have much trouble getting the tests to compile against 
the freenet code (a  basic GPLed implementation of the JUnit API for 
those that don't know what it is) but didn't get any meaningful output 
from running the tests against it yet.  I don't think that will be too 
hard to resolve.

Regards,

Dave

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Running Mauve tests with JUnit
  2006-03-08 13:21     ` David Gilbert
@ 2006-03-08 19:07       ` Dalibor Topic
  0 siblings, 0 replies; 5+ messages in thread
From: Dalibor Topic @ 2006-03-08 19:07 UTC (permalink / raw)
  To: David Gilbert; +Cc: mauve-discuss, mauve-patches

On Wed, 2006-03-08 at 13:21 +0000, David Gilbert wrote:
> Hi Dalibor,
> 
> I had meant to keep this on the Mauve lists, but I'll reply to the 
> Classpath list also...
> 

Sorry about the cross-posting :/ I've taken the classpath list out
again.

> I hadn't seen Graydon's bridge class, thanks for the link (and I should 
> do more research next time).  Looking over it, it has the advantage that 
> it doesn't require any existing Mauve testlets to be modified (and we 
> have a lot of testlets), but the disadvantage that it doesn't buy you 
> much in terms of integration with IDEs (you still have to generate the 
> test list ['classes'] file, for instance, which is the major stumbling 
> block that people seem to have when trying to run Mauve). 

OK, thanks for the explanation. I wasn't familiar with Graydon's code
either, just remembered it was sitting in my mail box.

> By modifying the Mauve testlets in the way that I proposed, you can (for 
> example) run a single test in Eclipse just by selecting the source file 
> and clicking 'Run as --> JUnit test'.  I figured that was the sort of 
> thing people were expecting.

That sounds very cool. 

Would it be possible to make that work without having to modify the
existing tests, by (just trowing random ideas here) using a proxy to
delegate to the junit Test runner, and having Testlet implement both the
junit.Test interface and the Testlet interface?

(I assume that a Junit test is recognized by an IDE by looking whether a
class implements the junit.Test interface? Or do IDEs look for a class
extending TestCase/TestSuite? I don't use IDEs much, so I hope the
questions are not too stupid.)

> Agreed.  I didn't have much trouble getting the tests to compile against 
> the freenet code (a  basic GPLed implementation of the JUnit API for 
> those that don't know what it is) but didn't get any meaningful output 
> from running the tests against it yet.  I don't think that will be too 
> hard to resolve.

Great, thanks for looking at that code. Sounds like it should be good
enough for the basic needs.

cheers,
dalibor topic

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2006-03-08 19:07 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-03-06 17:05 Running Mauve tests with JUnit David Gilbert
2006-03-08 10:40 ` David Gilbert
2006-03-08 11:08   ` Michael Koch
     [not found]   ` <20060308120721.GA7569@pogo.kaffe.org>
2006-03-08 13:21     ` David Gilbert
2006-03-08 19:07       ` Dalibor Topic

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).