Beispiel #1
0
        public void TestJsonLongArrayStr()
        {
            var list1 = new SampleArray {
                A = new string[100000]
            };

            for (int i = 0; i < list1.A.Length; ++i)
            {
                list1.A[i] = i.ToString();
            }

            var js = new JsonSerializer();

            js.JsonOptions.ArrayLengthPrefix = true;
            var result1 = js.ToString(list1);

            Assert.IsTrue(result1 != "");

            var list2 = new SampleArray();
            var jd    = new JsonDeserializer();

            jd.JsonOptions.ArrayLengthPrefix = true;
            jd.FromString(list2, result1);
            Assert.AreEqual(list1.A.Length, list2.A.Length);

            var jdg   = new SampleArray_JsonDeserializer();
            var list3 = (SampleArray)jdg.FromString(result1);

            Assert.AreEqual(list1.A.Length, list3.A.Length);
        }
Beispiel #2
0
 public void TestArray()
 {
     TestGen(cl => {
         var src = new int[5] {
             2, 4, 5, 6, 8
         };
         var dst = cl.Deep(src);
         CollectionAssert.AreEqual(src, dst);
     });
     TestGen(cl => {
         var src = new Sample1[] { new Sample1 {
                                       X = 33
                                   } };
         var dst = cl.Deep(src);
         Assert.AreNotEqual(src[0], dst[0]);
         Assert.AreEqual(src[0].X, dst[0].X);
     });
     TestGen(cl => {
         var src = new SampleArray {
             A = null
         };
         var dst = cl.Deep(src);
         Assert.AreNotEqual(src, dst);
         Assert.IsNull(dst.A);
     });
     TestGen(cl => {
         var src = new SampleArrayOfClass {
             A = new Sample1[] { new Sample1 {
                                     X = 33
                                 } }
         };
         var dst = cl.Deep(src);
         Assert.AreNotEqual(src, dst);
         Assert.AreNotEqual(src.A[0], dst.A[0]);
         Assert.AreEqual(src.A[0].X, dst.A[0].X);
     });
 }