Lew said:
There isn't a performance issue here in the first place.
Since the types are from a third party, there's nothing the OP can
do
about that choice regardless of whether it's a performance,
productivity or integrity issue, but work with the types given him.
The simplest way to do this, I suspect, is to
1. subclass TestCase.(to, say, TestCaseWithBloodyStupidBoxedTypes)
2. implement all needed assertEquals() overloads in this subclass
3. derive all the unit tests from the subclass
Now, when a test calls assertEquals(Boolean, Quaternion), it'll find
an exact match.