package com.alibaba.json.bvt;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import junit.framework.Assert;
import junit.framework.TestCase;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONException;
import com.alibaba.fastjson.JSONObject;
public class JSONFromObjectTest extends TestCase {
public void test_0() throws Exception {
User user = new User();
user.setId(3);
user.setName("周访");
JSONObject json = (JSONObject) JSON.toJSON(user);
Assert.assertEquals(new Long(3), json.getLong("id"));
Assert.assertEquals("周访", json.getString("name"));
}
public void test_1() throws Exception {
JSONObject user = new JSONObject();
user.put("id", 3);
user.put("name", "周访");
JSONObject json = (JSONObject) JSON.toJSON(user);
Assert.assertEquals(new Long(3), json.getLong("id"));
Assert.assertEquals("周访", json.getString("name"));
}
public void test_2() throws Exception {
HashMap user = new HashMap();
user.put("id", 3);
user.put("name", "周访");
JSONObject json = (JSONObject) JSON.toJSON(user);
Assert.assertEquals(new Long(3), json.getLong("id"));
Assert.assertEquals("周访", json.getString("name"));
}
public void test_3() throws Exception {
List users = new ArrayList();
HashMap user = new HashMap();
user.put("id", 3);
user.put("name", "周访");
users.add(user);
JSONArray array = (JSONArray) JSON.toJSON(users);
JSONObject json = array.getJSONObject(0);
Assert.assertEquals(new Long(3), json.getLong("id"));
Assert.assertEquals("周访", json.getString("name"));
}
public void test_error() throws Exception {
C c = new C();
JSONException error = null;
try {
JSON.toJSON(c);
} catch (JSONException e) {
error = e;
}
Assert.assertNotNull(error);
}
public static class User {
private long id;
private String name;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
public static class C {
public int getId() {
throw new UnsupportedOperationException();
}
public void setId(int id) {
throw new UnsupportedOperationException();
}
}
}