@Test
public void resolve_type() {

  assertEquals(ExprCoreType.INTEGER, DSL.ref("integer_value", INTEGER).type());
  assertEquals(ExprCoreType.LONG, DSL.ref("long_value", LONG).type());
  assertEquals(ExprCoreType.FLOAT, DSL.ref("float_value", FLOAT).type());
  assertEquals(ExprCoreType.DOUBLE, DSL.ref("double_value", DOUBLE).type());
  assertEquals(ExprCoreType.BOOLEAN, DSL.ref("boolean_value", BOOLEAN).type());
  assertEquals(ExprCoreType.STRING, DSL.ref("string_value", STRING).type());
  assertEquals(ExprCoreType.STRUCT, DSL.ref("struct_value", STRUCT).type());
  assertEquals(ExprCoreType.ARRAY, DSL.ref("array_value", ARRAY).type());
}