Sounds good to me, having more interoperability testing is a must IMO.
To that end I've been fooling with an avro schema fuzzer which you can glance at here: http://bit.ly/cDHST
It's no where near ready yet, in particular I'm currently fuzzing at the protocol level and I should probably be doing things at the schema level (is there a way to serialize RPC messages directly to disk, ala thrift, would that be difficult?) The current implementation works by generating a schema, then parsing that schema in both python (directly) and java (via call to specificcompiler and then javac).
Patrick Jeff Hammerbacher wrote:
Hey, We've got a test/schemata/ directory, but the only schema is the interop.avsc (everything else is a protocol). Meanwhile, we spend a lot of lines of code building big strings in our testing code to probe various aspects of schema parsing (e.g. src/test/java/org/apache/avro/TestSchema.java, src/test/py/testio.py). Would it make sense to extract these schemas into files under test/schemata/ and pull them in for the tests in each language? By doing so, we could also insure that the various language bindings are being tested in a consistent fashion. Let me know what you think. Thanks, Jeff