//[Test(Description = "test mixed list")] public void testMixedListField() { GenericListContainer input = new GenericListContainer(""); input.objectListPropA = new List <object>(); //input.objectListPropA.Add('3'); //input.objectListPropA.Add(4); input.objectListPropA.Add("5"); Object2Json o2j = mapping.getObject2Json(); //o2j.ExplorerFactory = () => { return new TypeHintingObjectExplorerImpl(); }; o2j.writeLeafValue = (writer, to, propertyName) => { if (to != null) { writer.Write("/*"); writer.Write(to.GetType().Name); writer.Write("*/"); } Object2Json.defaultWriteLeafValue(writer, to, propertyName); }; string json = o2j.toJson(input); GenericListContainer output = (GenericListContainer)mapping.getJson2Object().toObject(json, typeof(GenericListContainer)); Func <GenericListContainer, int, object> extractValue = (glc, index) => { return(glc.objectListPropA[index]); }; for (int done = 0; done < output.objectListPropA.Count; done++) { Assert.AreEqual(extractValue(input, done), extractValue(output, done), "checking index " + done); } }
public void testGenericListObjectFields() { GenericListContainer input = new GenericListContainer(""); input.objectListPropA = new List <object>(); input.objectListPropA.Add(new GenericListContainer("0")); input.objectListPropA.Add(new GenericListContainer("b")); input.objectListPropA.Add(new GenericListContainer("iii")); string json = mapping.getObject2Json().toJson(input); GenericListContainer output = (GenericListContainer)mapping.getJson2Object().toObject(json, typeof(GenericListContainer)); Func <GenericListContainer, int, string> extractValue = (glc, index) => { return(glc.objectListPropA[index].ToString()); }; for (int done = 0; done < output.objectListPropA.Count; done++) { Assert.AreEqual(extractValue(input, done), extractValue(output, done), "checking index " + done); } }
public void testGenericListPrimitiveFields() { GenericListContainer input = new GenericListContainer(""); input.intListPropB = new List <int>(); input.intListPropB.Add(3); input.intListPropB.Add(4); input.intListPropB.Add(5); string json = mapping.getObject2Json().toJson(input); GenericListContainer output = (GenericListContainer)mapping.getJson2Object().toObject(json, typeof(GenericListContainer)); Func <GenericListContainer, int, int> extractValue = (glc, index) => { return(glc.intListPropB[index]); }; for (int done = 0; done < output.intListPropB.Count; done++) { Assert.AreEqual(extractValue(input, done), extractValue(output, done), "checking index " + done); } }
public void testMapObjects() { GenericListContainer input = new GenericListContainer(""); input.stringToStringMapPropC = new Dictionary <string, string>(); input.stringToStringMapPropC["0"] = "zero"; input.stringToStringMapPropC["1"] = "one"; input.stringToStringMapPropC["2"] = "two"; input.stringToStringMapPropC["3"] = "three"; input.intToStringMapPropC = new Dictionary <int, string>(); input.intToStringMapPropC[0] = "zero"; input.intToStringMapPropC[1] = "one"; input.intToStringMapPropC[2] = "two"; input.intToStringMapPropC[3] = "three"; string json = mapping.getObject2Json().toJson(input); GenericListContainer output = (GenericListContainer)mapping.getJson2Object().toObject(json, typeof(GenericListContainer)); Func <GenericListContainer, string, string> extractValue; extractValue = (glc, strKey) => { return(glc.stringToStringMapPropC[strKey]); }; foreach (string strKey in input.stringToStringMapPropC.Keys) { Assert.AreEqual(extractValue(input, strKey), extractValue(output, strKey), "checking key " + strKey); } Func <GenericListContainer, int, string> extractIValue; extractIValue = (glc, iKey) => { return(glc.intToStringMapPropC[iKey]); }; foreach (int iKey in input.intToStringMapPropC.Keys) { Assert.AreEqual(extractIValue(input, iKey), extractIValue(output, iKey), "checking key " + iKey); } }
//[Test(Description = "test mixed list")] public void testMixedListField() { GenericListContainer input = new GenericListContainer(""); input.objectListPropA = new List<object>(); //input.objectListPropA.Add('3'); //input.objectListPropA.Add(4); input.objectListPropA.Add("5"); Object2Json o2j = mapping.getObject2Json(); //o2j.ExplorerFactory = () => { return new TypeHintingObjectExplorerImpl(); }; o2j.writeLeafValue = (writer, to, propertyName) => { if (to!=null) { writer.Write("/*"); writer.Write(to.GetType().Name); writer.Write("*/"); } Object2Json.defaultWriteLeafValue(writer, to, propertyName); }; string json = o2j.toJson(input); GenericListContainer output = (GenericListContainer)mapping.getJson2Object().toObject(json, typeof(GenericListContainer)); Func<GenericListContainer, int, object> extractValue = (glc, index) => { return glc.objectListPropA[index]; }; for (int done = 0; done < output.objectListPropA.Count; done++) { Assert.AreEqual(extractValue(input, done), extractValue(output, done), "checking index " + done); } }
public void testMapObjects() { GenericListContainer input = new GenericListContainer(""); input.stringToStringMapPropC = new Dictionary<string, string>(); input.stringToStringMapPropC["0"]= "zero"; input.stringToStringMapPropC["1"] = "one"; input.stringToStringMapPropC["2"] = "two"; input.stringToStringMapPropC["3"] = "three"; input.intToStringMapPropC = new Dictionary<int, string>(); input.intToStringMapPropC[0] = "zero"; input.intToStringMapPropC[1] = "one"; input.intToStringMapPropC[2] = "two"; input.intToStringMapPropC[3] = "three"; string json = mapping.getObject2Json().toJson(input); GenericListContainer output = (GenericListContainer)mapping.getJson2Object().toObject(json, typeof(GenericListContainer)); Func<GenericListContainer, string, string> extractValue; extractValue = (glc, strKey) => { return glc.stringToStringMapPropC[strKey]; }; foreach (string strKey in input.stringToStringMapPropC.Keys) { Assert.AreEqual(extractValue(input, strKey), extractValue(output, strKey), "checking key " + strKey); } Func<GenericListContainer, int, string> extractIValue; extractIValue = (glc, iKey) => { return glc.intToStringMapPropC[iKey]; }; foreach (int iKey in input.intToStringMapPropC.Keys) { Assert.AreEqual(extractIValue(input, iKey), extractIValue(output, iKey), "checking key " + iKey); } }
public void testGenericListPrimitiveFields() { GenericListContainer input = new GenericListContainer(""); input.intListPropB = new List<int>(); input.intListPropB.Add(3); input.intListPropB.Add(4); input.intListPropB.Add(5); string json = mapping.getObject2Json().toJson(input); GenericListContainer output = (GenericListContainer)mapping.getJson2Object().toObject(json, typeof(GenericListContainer)); Func<GenericListContainer, int, int> extractValue = (glc, index) => { return glc.intListPropB[index]; }; for (int done = 0; done < output.intListPropB.Count; done++) { Assert.AreEqual(extractValue(input, done), extractValue(output, done), "checking index " + done); } }
public void testGenericListObjectFields() { GenericListContainer input = new GenericListContainer(""); input.objectListPropA = new List<object>(); input.objectListPropA.Add(new GenericListContainer("0")); input.objectListPropA.Add(new GenericListContainer("b")); input.objectListPropA.Add(new GenericListContainer("iii")); string json = mapping.getObject2Json().toJson(input); GenericListContainer output = (GenericListContainer)mapping.getJson2Object().toObject(json, typeof(GenericListContainer)); Func<GenericListContainer, int, string> extractValue = (glc, index) => { return glc.objectListPropA[index].ToString(); }; for (int done=0; done<output.objectListPropA.Count; done++) { Assert.AreEqual(extractValue(input, done), extractValue(output, done), "checking index " + done); } }