assertNotNull( bson.get( "date" ) );
assertTrue( bson.get( "date" ) instanceof java.util.Date );
BSON.addDecodingHook( Date.class, tf );
d.decode( new ByteArrayInputStream( buf.toByteArray() ), cb );
bson = (BSONObject) cb.get();
assertNotNull( bson.get( "date" ) );
assertTrue( bson.get( "date" ) instanceof TestDate );
assertEquals( bson.get( "date" ), td );