Back to project page Icinga-Mobile.
The source code is released under:
GNU General Public License
If you think the Android project Icinga-Mobile listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
package mhst.dreamteam.IcingaClient.Json; /*from ww w . j a v a 2 s . co m*/ import android.test.AndroidTestCase; import android.test.suitebuilder.annotation.LargeTest; import android.util.Log; import junit.framework.Assert; import org.json.JSONException; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; /** * Created by dynamo on 9/28/14. */ public class JsonHelperTest extends AndroidTestCase{ public String mapToJson(Map map){ String result = "{"; ArrayList<String> key = new ArrayList<String>(map.keySet()); for (int j = 0; j < key.size(); j++) { if(key.get(j) == null || key.get(j).toString().isEmpty()) continue; result += "\"" + key.get(j).toString() + "\":"; if(map.get(key.get(j)) instanceof ArrayList){ ArrayList arr = (ArrayList) map.get(key.get(j)); result += "["; for (int i = 0; i < arr.size(); i++){ result += "\"" + arr.get(i) + "\""; if (i < arr.size() - 1) result += ","; } result += "]"; } else if (map.get(key.get(j)) instanceof String){ result += "\"" + map.get(key.get(j)) + "\""; } else if (map.get(key.get(j)) instanceof Map){ result += mapToJson((Map)map.get(key.get(j))); } else if (map.get(key.get(j)) == null){ result += "null"; } else result += map.get(key.get(j)); if (j < key.size() - 1) result += ","; } result += "}"; return result; } @LargeTest public void testToJson_Null() throws JSONException { Assert.assertNull(JsonHelper.toJSON(null)); } @LargeTest public void testToJson_One_Null() throws JSONException { Map<String,Object> map = new HashMap(); map.put(null,null); Assert.assertEquals(JsonHelper.toJSON(map).toString(), mapToJson(map)); } @LargeTest public void testToJson_One_NullKey() throws JSONException { Map<String,Object> map = new HashMap(); map.put(null,"acb"); Assert.assertEquals(JsonHelper.toJSON(map).toString(), mapToJson(map)); } @LargeTest public void testToJson_One_NullValue_EmptyKey() throws JSONException { Map<String,Object> map = new HashMap(); map.put("",null); Assert.assertEquals(JsonHelper.toJSON(map).toString(), mapToJson(map)); } @LargeTest public void testToJson_One_NullValue() throws JSONException { Map<String,Object> map = new HashMap(); map.put("1",null); Assert.assertEquals(JsonHelper.toJSON(map).toString(), mapToJson(map)); } @LargeTest public void testToJson_One_EmptyStringAll() throws JSONException { Map<String,Object> map = new HashMap(); map.put("",""); Assert.assertEquals(JsonHelper.toJSON(map).toString(), mapToJson(map)); } @LargeTest public void testToJson_One_EmptyStringKey() throws JSONException { Map<String,Object> map = new HashMap(); map.put("","string"); Assert.assertEquals(JsonHelper.toJSON(map).toString(), mapToJson(map)); } @LargeTest public void testToJson_KeyNotString() throws JSONException { Map<Object,Object> map = new HashMap(); map.put(1,"string"); Assert.assertEquals(JsonHelper.toJSON(map).toString(), "{\"1\":\"string\"}"); } @LargeTest public void testToJson_One_EmptyStringValue() throws JSONException { Map<String,Object> map = new HashMap(); map.put("1",""); Assert.assertEquals(JsonHelper.toJSON(map).toString(), mapToJson(map)); } @LargeTest public void testToJson_One_NormalString() throws JSONException { Map<String,Object> map = new HashMap(); map.put("1","string"); Assert.assertEquals(JsonHelper.toJSON(map).toString(), mapToJson(map)); } @LargeTest public void testToJson_One_EmptyArray() throws JSONException { Map<String,Object> map = new HashMap(); ArrayList arr = new ArrayList(); map.put("3",arr); Assert.assertEquals(JsonHelper.toJSON(map).toString(), mapToJson(map)); } @LargeTest public void testToJson_One_NormalArray() throws JSONException { Map<String,Object> map = new HashMap(); ArrayList arr = new ArrayList(); arr.add("arrayIndex1"); arr.add("arrayIndex2"); arr.add("arrayIndex3"); map.put("3",arr); Assert.assertEquals(JsonHelper.toJSON(map).toString(), mapToJson(map)); } @LargeTest public void testToJson_One_EmptyMap() throws JSONException { Map<String,Object> map = new HashMap(); Map<String,Object> map2 = new HashMap(); map.put("4",map2); Assert.assertEquals(JsonHelper.toJSON(map).toString(), mapToJson(map)); } @LargeTest public void testToJson_One_NormalMap() throws JSONException { Map<String,Object> map = new HashMap(); Map<String,Object> map2 = new HashMap(); map2.put("5",""); map2.put("6",null); map.put("4",map2); Assert.assertEquals(JsonHelper.toJSON(map).toString(), mapToJson(map)); } @LargeTest public void testToJson_One_Boolean() throws JSONException { Map<String,Object> map = new HashMap(); map.put("7",true); Assert.assertEquals(JsonHelper.toJSON(map).toString(), mapToJson(map)); } @LargeTest public void testToJson_One_Numeric() throws JSONException { Map<String,Object> map = new HashMap(); map.put("2",1024); Assert.assertEquals(JsonHelper.toJSON(map).toString(), mapToJson(map)); } @LargeTest public void testToJson_More() throws JSONException { Map<String,Object> map = new HashMap(); Map<String,Object> map2 = new HashMap(); map2.put("5",""); map2.put("6",null); map.put("1","string"); map.put("2",1024); ArrayList arr = new ArrayList(); arr.add("arrayIndex1"); arr.add("arrayIndex2"); arr.add("arrayIndex3"); map.put("3",arr); map.put("4",map2); map.put("7",true); Assert.assertEquals(JsonHelper.toJSON(map).toString(), mapToJson(map)); } // @Test // public void testFromJson() { // Foo foo = JsonHelper.fromJson("{'bar':1, 'baz':'Hello World'}", Foo.class); // Assert.assertEquals(1, foo.bar); // Assert.assertEquals("Hello World", foo.baz); // } // @Test // public void testFromJsonWithExtraProperties() { // Foo foo = JsonHelper.fromJson("{'foo':1, 'bar':2, 'baz':'Hello World'}", Foo.class); // Assert.assertEquals(1, foo.bar); // Assert.assertEquals("Hello World", foo.baz); // } // @Test // public void testFromJsonWithMalformedJson() { // JsonHelper.fromJson("{", int.class); // } // @Test // public void testFromJsonAbleToReadToJson() { // Foo foo = foo(1, "Hello World"); // Foo bar = JsonHelper.fromJson(JsonHelper.toJSON(foo), Foo.class); // Assert.assertEquals(foo.bar, bar.bar); // Assert.assertEquals(foo.baz, bar.baz); // } }