Since the old test verifies that the values are correct, I think the new one should do that too, unless it's covered by other tests. It's kind of important that the returned value of a cast is correct...
Some minor nits:
- tearDown() should call super.tearDown()
- in some cases fail() is used to report an unexpected exception. I think it's better just to (re-)throw the exception so that we preserve the stack trace.
- some uses of fail, like
+ if (!isSupportedAssignment(sourceType,targetType))
+ fail(description + "should not succeed");
would perhaps be clearer if they were written as assertTrue(...)
- the indentation is a bit inconsistent (some places 4 characters, but most places 8)
- most of the "public static" methods could be "private static", I think
- the test methods are declared as "throws SQLException, Throwable". I don't think the Throwable is needed (but I haven't checked, so I might be wrong)