### Question:
JavaTypeMapping { @Nullable public Type<?> getType(String table, String column) { Map<String,Type<?>> columns = typeByColumn.get(table); if (columns != null) { return columns.get(column); } else { return null; } }  @Nullable Type<?> getType(String table, String column); @SuppressWarnings("unchecked") Type<T> getType(Class<T> clazz); void register(Type<?> type); void setType(String table, String column, Type<?> type);  }### Answer:
@Test public void getType_with_interfaces() { assertEquals(BlobType.class, typeMapping.getType(DummyBlob.class).getClass()); }
@Test public void getType_for_object() { assertEquals(ObjectType.class, typeMapping.getType(Object.class).getClass()); }
@Test public void getType_for_primitive() { assertEquals(ByteType.class, typeMapping.getType(byte.class).getClass()); assertEquals(ShortType.class, typeMapping.getType(short.class).getClass()); assertEquals(IntegerType.class, typeMapping.getType(int.class).getClass()); assertEquals(LongType.class, typeMapping.getType(long.class).getClass()); assertEquals(FloatType.class, typeMapping.getType(float.class).getClass()); assertEquals(DoubleType.class, typeMapping.getType(double.class).getClass()); assertEquals(BooleanType.class, typeMapping.getType(boolean.class).getClass()); assertEquals(CharacterType.class, typeMapping.getType(char.class).getClass()); }