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