Exemplo n.º 1
0
        public void ReadAsCollection_ObjectArray()
        {
            JArray values = new JArray();

            for (int i = 1; i <= 3; i++)
            {
                JObject jsonObject = new JObject
                {
                    { "prop1", "value1" },
                    { "prop2", true },
                    { "prop3", 123 }
                };
                values.Add(jsonObject);
            }

            string json = values.ToString();

            byte[]       bytes = Encoding.UTF8.GetBytes(json);
            MemoryStream ms    = new MemoryStream(bytes);

            var result = FunctionBinding.ReadAsCollection(ms).Cast <JObject>().ToArray();

            Assert.Equal(3, result.Length);
            for (int i = 0; i < 3; i++)
            {
                JObject jsonObject = (JObject)result[i];
                Assert.Equal("value1", (string)jsonObject["prop1"]);
                Assert.Equal(true, (bool)jsonObject["prop2"]);
                Assert.Equal(123, (int)jsonObject["prop3"]);
            }
        }
Exemplo n.º 2
0
        public void ReadAsCollection_StringArray_WithBOM()
        {
            JArray values = new JArray();

            values.Add("Value1");
            values.Add("Value2");
            values.Add("Value3");

            // add the BOM character to the string
            var json = "\xFEFF" + values.ToString() + "\r\n";

            MemoryStream ms     = new MemoryStream();
            StreamWriter writer = new StreamWriter(ms);

            writer.Write(json);
            writer.Flush();
            ms.Position = 0;

            var collection = FunctionBinding.ReadAsCollection(ms).Cast <JValue>().ToArray();

            Assert.Equal(3, collection.Length);
            Assert.Equal("Value1", (string)collection[0]);
            Assert.Equal("Value2", (string)collection[1]);
            Assert.Equal("Value3", (string)collection[2]);
        }
Exemplo n.º 3
0
        public void ReadAsCollection_StringSingleton()
        {
            byte[]       bytes = Encoding.UTF8.GetBytes("Value1");
            MemoryStream ms    = new MemoryStream(bytes);

            var collection = FunctionBinding.ReadAsCollection(ms).Cast <string>().ToArray();

            Assert.Equal(1, collection.Length);
            Assert.Equal("Value1", (string)collection[0]);
        }
Exemplo n.º 4
0
        public void ReadAsCollection_StringArray()
        {
            JArray values = new JArray();

            values.Add("Value1");
            values.Add("Value2");
            values.Add("Value3");

            string json = values.ToString();

            byte[]       bytes = Encoding.UTF8.GetBytes(json);
            MemoryStream ms    = new MemoryStream(bytes);

            var collection = FunctionBinding.ReadAsCollection(ms).Cast <JValue>().ToArray();

            Assert.Equal(3, collection.Length);
            Assert.Equal("Value1", (string)collection[0]);
            Assert.Equal("Value2", (string)collection[1]);
            Assert.Equal("Value3", (string)collection[2]);
        }
Exemplo n.º 5
0
        public void ReadAsCollection_ObjectSingleton()
        {
            JObject jsonObject = new JObject
            {
                { "prop1", "value1" },
                { "prop2", true },
                { "prop3", 123 }
            };

            string json = jsonObject.ToString();

            byte[]       bytes = Encoding.UTF8.GetBytes(json);
            MemoryStream ms    = new MemoryStream(bytes);

            var result = FunctionBinding.ReadAsCollection(ms).Cast <JObject>().ToArray();

            Assert.Equal(1, result.Length);
            jsonObject = (JObject)result[0];
            Assert.Equal("value1", (string)jsonObject["prop1"]);
            Assert.Equal(true, (bool)jsonObject["prop2"]);
            Assert.Equal(123, (int)jsonObject["prop3"]);
        }