View Javadoc

    1   /*
    2    * Copyright (c) 2001-2003 The XDoclet team
    3    * All rights reserved.
    4    */
    5   package xjavadoc;
    6
    7   import java.io.*;
    8   import junit.framework.*;
    9   import xjavadoc.Token;
    10
    11  /***
    12   * JUnit test for XDoc.
    13   *
    14   * @author      Aslak Hellesøy
    15   * @created     3. januar 2002
    16   * @ejb:bla     bla
    17   * @param what  about this one? Or this one?
    18   * @oh          dear="we" should="go to bed"
    19   */
    20  public class XDocTest extends TestCase
    21  {
    22
    23  	private XDoc       doc;
    24  	/***
    25  	 * @param name     name of the test
    26  	 */
    27  	public XDocTest( String name )
    28  	{
    29  		super( name );
    30  	}
    31
    32  	/***
    33  	 * setup doc for testing
    34  	 *
    35  	 * @exception IOException
    36  	 */
    37  	public void setUp() throws IOException
    38  	{
    39  		String javadoc =
    40  			"/********************** This is in the doc too      \n" +
    41  			" * JUnit test for\n" +
    42  			"   * JavaDocReader.    \n" +
    43  			"   * This is sentence number two.   \n" +
    44  			"     * @ejb:bla * bla\n" +
    45  			" *   @param what about\n" +
    46  			" * this one?\n" +
    47  			" *Or this\n" +
    48  			"     one?\n" +
    49  			" * @oh dear=\"we\" should=\"go to bed\"\n" +
    50  			" */";
    51
    52  		Token token = Token.newToken( 0 );
    53
    54  		token.image = javadoc;
    55  		doc = new XDoc( token, null, null );
    56
    57  	}
    58
    59  	/***
    60  	 * test comment text and first sentence
    61  	 *
    62  	 * @exception IOException  Describe the exception
    63  	 */
    64  	public void testFirstSentence() throws IOException
    65  	{
    66
    67  		assertEquals( "This is in the doc too JUnit test for JavaDocReader.", doc.getFirstSentence() );
    68  		assertEquals( "This is in the doc too JUnit test for JavaDocReader. This is sentence number two.", doc.getCommentText() );
    69
    70  	}
    71
    72  	public void testCommentChange() throws IOException
    73  	{
    74  		doc.setCommentText( "foo bar baz blurge. And this is second sentence" );
    75
    76  		assertEquals( "foo bar baz blurge.", doc.getFirstSentence() );
    77  		assertEquals( "foo bar baz blurge. And this is second sentence", doc.getCommentText() );
    78
    79  	}
    80
    81  	public void testTagCreationAndRemoval() throws IOException
    82  	{
    83  		//check tag creation
    84  		doc.addTag( "foo:bar", "blurge=\"bang\" baz=\"blabla\" what's up?" );
    85
    86  		assertTrue( doc.hasTag( "foo:bar" ) );
    87
    88  		// and removal
    89  		doc.removeTag( doc.getTag( "foo:bar" ) );
    90
    91  		assertTrue( !doc.hasTag( "foo:bar" ) );
    92
    93  	}
    94
    95  	public void testTagChange() throws IOException
    96  	{
    97
    98  		doc.addTag( "foo:bar", "blurge=\"bang\" baz=\"blabla\" what's up?" );
    99
    100 		assertEquals( doc.getTagAttributeValue( "foo:bar", "blurge" ), "bang" );
    101
    102 		XTag tag = doc.getTag( "foo:bar" );
    103
    104 		tag.setAttribute( "blurge", "foo" );
    105 		assertEquals( tag.getAttributeValue( "blurge" ), "foo" );
    106
    107 		tag.setAttribute( "foo", "bar" );
    108
    109 		assertEquals( doc.getTagAttributeValue( "foo:bar", "blurge" ), "foo" );
    110 		assertEquals( doc.getTagAttributeValue( "foo:bar", "foo" ), "bar" );
    111
    112 	}
    113 }