content: package com.alibaba.json.bvt.serializer;
  
  import java.lang.ref.WeakReference;
  
  import junit.framework.TestCase;
  
  import org.junit.Assert;
  
  import com.alibaba.fastjson.JSON;
  import com.alibaba.fastjson.parser.ParserConfig;
  import com.alibaba.fastjson.serializer.ReferenceCodec;
  
  public class ReferenceDeserializerTest extends TestCase {
  
      public void test_0() throws Exception {
          ParserConfig config = new ParserConfig();
          config.putDeserializer(MyRef.class, ReferenceCodec.instance);
          Exception error = null;
          try {
              JSON.parseObject("{\"ref\":{}}", VO.class, config, 0);
          } catch (Exception ex) {
              error = ex;
          }
          Assert.assertNotNull(error);
      }
  
      public static class VO {
  
          private MyRef<Object> ref;
  
          public MyRef<Object> getRef() {
              return ref;
          }
  
          public void setRef(MyRef<Object> ref) {
              this.ref = ref;
          }
  
      }
  
      public static class MyRef<T> extends WeakReference<T> {
  
          MyRef(T referent){
              super(referent);
          }
  
      }
  }
  