public void JsonParserConstructorTest() { ICharSource source = new StringCharSource("{\"array\":[[],false,null,2.718281828,{},\"foo\"],\"bool\":true,\"null\":null,\"number\":2.828427125,\"object\":{\"array\":[[],false,null,2.718281828,{},\"foo\"],\"bool\":true,\"null\":null,\"number\":2.828427125,\"object\":{},\"string\":\"Hello, World!\"},\"string\":\"Hello, World!\"}"); var target = new JsonParser_Accessor(source); Assert.AreEqual(source, target.CharSource); var root = target.ParseElement() as JsonObject; Assert.IsNotNull(root); Assert.IsNotNull(root["array"]); Assert.IsNotNull(root["string"]); Assert.AreEqual("Hello, World!", ((JsonString)root["string"]).Value); }
public void ParseElementTest() { ICharSource source = new StringCharSource("{\"array\":[],\"bool\":true,\"null\":null,\"number\":2012,\"object\":{},\"string\":\"Hello, World!\"}"); var param0 = new PrivateObject(JsonParser.CreateJsonParser(source)); var target = new JsonParser_Accessor(param0); JsonElement actual = target.ParseElement(); var obj = actual as JsonObject; Assert.IsNotNull(obj); Assert.AreEqual(6, obj.Items.Count); Assert.IsNotNull(obj["bool"]); Assert.AreEqual("Hello, World!", ((JsonString)obj["string"]).Value); source = new StringCharSource("[[],true,null,2012,{},\"Hello, World!\"]"); param0 = new PrivateObject(JsonParser.CreateJsonParser(source)); target = new JsonParser_Accessor(param0); actual = target.ParseElement(); var array = actual as JsonArray; Assert.IsNotNull(array); Assert.AreEqual(6, array.Items.Count); Assert.IsNotNull(array[2]); Assert.AreEqual(2012, ((JsonNumber)array[3]).Value); }