package com.alibaba.json.bvt.bug;
import junit.framework.TestCase;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
public class Issue179 extends TestCase {
public void test_for_issue_179() throws Exception {
Student student = new Student();
School school = new School();
school.setStudent(student);
student.setSchool(school);
// String schoolJSONString = JSON.toJSONString(school);
// System.out.println(schoolJSONString);
//
// School fromJSONSchool = JSON.parseObject(schoolJSONString,
// School.class);
//
// System.out.println(JSON.toJSONString(fromJSONSchool));
JSONObject object = new JSONObject();
object.put("school", school);
String jsonString = JSON.toJSONString(object);
System.out.println(jsonString);
JSONObject object2 = (JSONObject) JSON.parseObject(jsonString, JSONObject.class);
System.out.println(JSON.toJSONString(object2));
School school2 = object2.getObject("school", School.class);
System.out.println(school2);
}
public static class School {
Student student;
public Student getStudent() {
return student;
}
public void setStudent(Student student) {
this.student = student;
}
}
static class Student {
public School getSchool() {
return school;
}
public void setSchool(School school) {
this.school = school;
}
School school;
}
}