Hi,

Joachim Grüneis wrote:
> Hello Bao,
> 
> I'm not Werner :-) but I think I can answer some of your questions...
> 
> 
> 2008/5/8 Le Duc Bao <[EMAIL PROTECTED]>:
>> Hi Werner,
>> 
>> In last couple of days, I studied the schema API, existent JAXB
>> source code and also JAXB specification. I found that the existent
>> schema module hasn't a complement test module. It's good idea to do
>> some test on existent code to verify the completeness.
> 
> That is not completely right... there are some tests for SchemaReader
>  and SchemaWriter. There is a subproject with name xmlctf-framework 
> which contains an integration test framework developed for Castor and
>  xmlctf contains the integration tests for Castor XML. If you have a
> look onto xmlctf/tests/MasterTestSuite/schema/... you fill find all
> integration tests regarding reading and writing of schema definition
> files. How these tests are executed can be seen in SchemaTestCase,
> the main sequence is:
> 
> File schemaFile = new File(_test.getTestFile() + "/" + _schemaName);
> 
> String schemaURL = schemaFile.toURL().toString();
> 
> 
> 
> 
> Schema schema = testReadingSchema(schemaURL);
> 
> if (schema == null) {
> 
> return;
> 
> }
> 
> testWritingSchema(schemaURL, schema);
> 
> // Compare marshaled schema to gold file if provided, otherwise to
> input file
> 
> compareSchemaFiles(schemaFile);
> 
> so I expect that SchemaReader and SchemaWriter are tested. BUT I
> think it will be better if you create plain JUnit tests for your 
> SchemaWriter tests - because: 
>
>
> * First of all the implementation of
> the test framework is very ugly and I would like to get rid of it. *
> The tests can not easily (nicely) be executed within Eclipse like 
> other JUnit based tests. 
And I will work with Joachim to supply you with a base test class that
eases things considerably.

> * The tests are meant to test a cycle of
> read, write and compare the resulting xsd file with the start file...
> I expect your tests will start with Java code - later annotated Java
> classes - write a xsd file and compare against a gold file.
> 
> I do agree that you should build a suite of tests that test creating 
> of schema files starting with Java declarations... to check if all 
> schema definitions you will need later are supported.
> 
>> 
>> My understanding of your idea is that test cases will be created by
>> writing some code fragments and expected schema files. Each test
>> case will execute a code fragment to generate a schema, then
>> compare this generated schema with expected schema. This approach
>> will test the corectness of internal schema representation and the
>> SchemaWriter. Is it right?
> 
> Yes
> 
>> Furthermore, I have some stuffs that I need your comments/advices -
>> Do you agree with my proposal for XML Schema generator
>> architecture?
> 
> I have to check older mails regarding it...
> 
>> - Related to SVN space for my project, will I work dirrectly in
>> castor-jaxb-2.0 module or will you create a separate module for me?
>> 
> 
> for all stuff the needs to be extended in the Schema project you will
>  work on Castor itself - for JAXB specific stuff it will be 
> castor-jaxb-2.0 .
> 
>> - For the coding convention, I remember that Ralf gave me a
>> document some times before, but I don't keep it in my computer.
>> Could you give me a pointer for this?
> 
> You should simply enable checkstyle and you will see the warnings...
> I adapt files that I really change (more then just a few lines) but I
> do not reformat class I do not really touch...
> 
>> Anyway, I keep going on JAXB specification in next few days while
>> looking for your reply.
>> 
>> Regards, Bao
>> 
>> 
> 
> Have fun
> 
> Joachim
> 
>> 
>> 
>> On Thu, May 8, 2008 at 7:31 PM, Werner Guttmann
>> <[EMAIL PROTECTED]> wrote:
>> 
>>> Hi Bao,
>>> 
>>> following up your last email about the schema classes, there's
>>> some ideas how to go about things step by step.
>>> 
>>> I think it would be a good idea if you added your code fragments
>>> (that demonstrate and investigate the completeness of the
>>> existing schema classes) to e.g. the test case of the 'schema'
>>> module.
>>> 
>>> I have been talking to Joachim the other day, and we think that
>>> we could come up with a base test case class that takes a Schema
>>> object instance, writes it to a physical XML schema file (using
>>> SchemaWriter) and compares it with a gold XML schema file.
>>> 
>>> Based upon this test case, you could create one test case after
>>> the other and add them to src/test/java and src/test/resources of
>>> the schema module.
>>> 
>>> In terms of proceeding on the complexity side of things, I'd
>>> start with simple things such as adding one complex type, one
>>> global element definition to an XML schema, and then take it from
>>> there. If you had a look at the JAXB specification, you'll find
>>> plenty of references in terms of what XML schema artefacts you
>>> will have to be able to produce (and serialize).
>>> 
>>> Let me know whether this approach is fine for you, and whether
>>> you have any additional thoughts.
>>> 
>>> Regards Werner
>>> 
>> 
>> 
>> -- Le Duc Bao
> 
> ---------------------------------------------------------------------
>  To unsubscribe from this list, please visit:
> 
> http://xircles.codehaus.org/manage_email
> 
> 
> 


---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to