cvs commit: spice/sandbox/metaclass/src/test/org/realityforge/metaclass/tools/tasks MetaGenerateTaskTestCase.java
Peter Donald <[email protected]>
| Newsgroups | gmane.comp.java.spice.cvs |
|---|---|
| Message-ID | <[email protected]> |
donaldp 03/10/29 02:31:02
Modified: sandbox/metaclass/src/test/org/realityforge/metaclass/tools/tasks
MetaGenerateTaskTestCase.java
Log:
Start to test round trip of XML code
Revision Changes Path
1.23 +55 -1 spice/sandbox/metaclass/src/test/org/realityforge/metaclass/tools/tasks/MetaGenerateTaskTestCase.java
Index: MetaGenerateTaskTestCase.java
===================================================================
RCS file: /cvsroot/spice/spice/sandbox/metaclass/src/test/org/realityforge/metaclass/tools/tasks/MetaGenerateTaskTestCase.java,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- MetaGenerateTaskTestCase.java 29 Oct 2003 08:30:43 -0000 1.22
+++ MetaGenerateTaskTestCase.java 29 Oct 2003 10:31:02 -0000 1.23
@@ -30,7 +30,7 @@
/**
*
* @author <a href="mailto:peter at realityforge.org">Peter Donald</a>
- * @version $Revision: 1.22 $ $Date: 2003/10/29 08:30:43 $
+ * @version $Revision: 1.23 $ $Date: 2003/10/29 10:31:02 $
*/
public class MetaGenerateTaskTestCase
extends TestCase
@@ -319,6 +319,60 @@
assertTrue( "destFile.exists()", destFile.exists() );
final MetaClassIOBinary io = new MetaClassIOBinary();
+ final FileInputStream input = new FileInputStream( destFile );
+ final ClassDescriptor descriptor = io.deserializeClass( input );
+ assertEquals( "descriptor.name", "com.biz.MyClass", descriptor.getName() );
+ assertEquals( "descriptor.attributes.length", 1, descriptor.getAttributes().length );
+ assertEquals( "descriptor.attributes[0].name", "anAttribute", descriptor.getAttributes()[ 0 ].getName() );
+ assertEquals( "descriptor.methods.length", 0, descriptor.getMethods().length );
+ assertEquals( "descriptor.fields.length", 0, descriptor.getFields().length );
+ }
+
+
+ public void testSingleSourceFileAsXML()
+ throws Exception
+ {
+ final String source =
+ "package com.biz;\n" +
+ "\n" +
+ "/**\n" +
+ " * @anAttribute\n" +
+ " */\n" +
+ "public class MyClass\n" +
+ "{\n" +
+ "}\n";
+
+ final File sourceDirectory = generateDirectory();
+ final File destDirectory = generateDirectory();
+ final FileSet fileSet = new FileSet();
+ fileSet.setDir( sourceDirectory );
+ fileSet.setIncludes( "**/*.java" );
+
+ final String sourceFilename =
+ sourceDirectory + File.separator + "com" + File.separator + "biz" + File.separator + "MyClass.java";
+ final File sourceFile = new File( sourceFilename );
+ sourceFile.getParentFile().mkdirs();
+ final FileOutputStream output = new FileOutputStream( sourceFile );
+ output.write( source.getBytes() );
+ output.close();
+
+ final MockMetaGenerateTask task = new MockMetaGenerateTask();
+ final Project project = new Project();
+ project.setBaseDir( getBaseDirectory() );
+ task.setProject( project );
+ task.setNamespaceTagsOnly( false );
+ final FormatEnum format = new FormatEnum();
+ format.setValue( "xml" );
+ task.setFormat( format );
+ task.setDestDir( destDirectory );
+ task.addFileset( fileSet );
+ task.execute();
+ final String destFilename =
+ destDirectory + File.separator + "com" + File.separator + "biz" + File.separator + "MyClass" + DefaultMetaClassAccessor.XML_EXT;
+ final File destFile = new File( destFilename );
+
+ assertTrue( "destFile.exists()", destFile.exists() );
+ final MetaClassIOXml io = new MetaClassIOXml();
final FileInputStream input = new FileInputStream( destFile );
final ClassDescriptor descriptor = io.deserializeClass( input );
assertEquals( "descriptor.name", "com.biz.MyClass", descriptor.getName() );
-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive? Does it
help you create better code? SHARE THE LOVE, and help us help
YOU! Click Here: http://sourceforge.net/donate/