Hi,
I'm going to start merging existing frameworks for testing
serialization.
As first step I've updated 'security' framework. The updated framework
searches and loads resource files according [1] and eliminates
requirement
to extend SerializationTest. Also to provide smooth frameworks
merging I've
put stub to let the framework search resources in the 'old' way (
i.e. via
"RESOURCE_DIR" system property). The stub will be removed after
completing
the merge.
The updated framework suggests the following way for testing
serialization:
a) Compatibility – 4 new static methods are introduced.
verifyGolden(TestCase, Object)
verifyGolden(TestCase, Object, SerializableAssert)
verifyGolden(TestCase, Object[])
verifyGolden(TestCase, Object[], SerializableAssert)
A test should invoke one of above methods, for example,
public void testCompatibility() throws Exception {
SerializationTest.verifyGolden(this, new SomeSerializableClass ());
}
b) Self-testing: the same as for compatibility – there are 4 new static
methods that should be invoked from a test:
verifySelf(TestCase, Object)
verifySelf(Object, SerializableAssert)
verifySelf(TestCase, Object[])
verifySelf(Object[], SerializableAssert)
For example,
public void testSelf() throws Exception {
SerializationTest.verifySelf(new SomeSerializableClass(), new
MyComparator());
}
To complete frameworks merging I'd like to suggest the next steps:
2) Reviewing the update and the suggested way for testing
serialization by
the community. Please let me know if it is acceptable and what can be
improved.
3) Replace SerializationTester class with SerializationTest. I'm
going to
add more stubs to let existing tests work in the 'old' way.
4) Adjusting existing serialization tests (moving and renaming resource
files, replacing stubs invocation with new methods)
5) Removing stubs.
Thanks,
Stepan Mishura
Intel Middleware Products Division
[1]
http://incubator.apache.org/harmony/subcomponents/classlibrary/ser_testing.html
------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]