@Override public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(null); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template<EnumTypeFieldsClassNotNullable> tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, u.getReadByteCount()); }