There's a test I'd like to see run as part of release verification. It
is a sanity check for internationalized messages to make sure that we're
actually loading and creating messages correctly. It can't be run as
part of derbyall because it requires some code generation, it depends on
GNU sed, and because it may need tweaking.
What you do is you cd into tools/testing/i18nTestGenerator, and run
generateClientMessageTest.sh <path to Derby root>. It uses GNU SED
(gsed) which is available on most UNIX platforms. What it does is it
attempts to scan through all the client code looking for where we create
internationalized SqlExceptions and generates a test file that basically
tries to create each SqlException in an independent unit test.
This involves a lot of substitution work, and each time new
SqlExceptions are introduced, it tends to require some tweaking, which
I'm glad to help with. But this test has proved invaluable in catching
nasty bugs where message ids don't map to a valid messages, the message
is not available in the client-side resource file, or the wrong number
of parameters are passed to the message.
I could run this test myself as part of my validation of the release,
but it would be great to have this documented as one of the tests to run.
If there are no objections, I can add a link to instructions on how to
run it off of the general "how to cut a release" page.
David
- Release testing: i18n validation David Van Couvering
-