Пример #1
0
        public void ConvertToJSONTest()
        {
            JSONParameters param = new JSONParameters();
            param.UseExtensions = true;
            //param.UsingGlobalTypes = false;
            JSONSerializer target = new JSONSerializer(param);
            TestClass tc = new TestClass() { T1 = "4", t2 = 3 };
            string expected = "{\"$types\":{\"Arch.CFramework.AppInternals.Test.TestClass, Arch.CFramework.AppInternals.Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null\":\"1\"},\"$type\":\"1\",\"T1\":\"4\",\"t2\":3}";//
            string actual;
            actual = target.ConvertToJSON(tc);
            Assert.AreEqual(expected, actual);
            param.UseExtensions = false;
            param.FixValues();
            target = new JSONSerializer(param);
            expected = "{\"T1\":\"4\",\"t2\":3}";
            actual = target.ConvertToJSON(tc);
            Assert.AreEqual(expected, actual);
            param.UseExtensions = true;
            param.UsingGlobalTypes = true;
            target = new JSONSerializer(param);
            TestClass2 tc2 = new TestClass2() { T1 = GetDataTable(), t2 = new DataSet(), T3 = new Dictionary<string, string>(), t4 = DateTime.Parse("2013-02-20 06:42:39Z"), t5 = new List<string>(), t6 = new Guid(), t7 = TEnum.A };
            tc2.t2.Tables.Add(tc2.T1);
            tc2.T3.Add("a", "a1");
            tc2.T3.Add("b", "b1");
            tc2.t5.Add("aa");
            tc2.t5.Add("bb");
            actual = target.ConvertToJSON(tc2);
            
            Assert.AreEqual("{\"$types\":{\"Arch.CFramework.AppInternals.Test.TestClass2, Arch.CFramework.AppInternals.Test, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null\":\"1\",\"Arch.CFramework.AppInternals.Serialization.JSONSerialize.DatasetSchema, Arch.CFramework.AppInternals, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null\":\"2\"},\"$type\":\"1\",\"T1\":{\"$schema\":{\"$type\":\"2\",\"Info\":[\"test\",\"t1\",\"System.Int32\",\"test\",\"t2\",\"System.Int32\",\"test\",\"t3\",\"System.Int32\"],\"Name\":\"test\"},\"test\":[[0,1,2]]},\"t2\":{\"$schema\":{\"$type\":\"2\",\"Info\":[\"test\",\"t1\",\"System.Int32\",\"test\",\"t2\",\"System.Int32\",\"test\",\"t3\",\"System.Int32\"],\"Name\":\"NewDataSet\"},\"test\":[[0,1,2]]},\"T3\":{\"a\":\"a1\",\"b\":\"b1\"},\"t7\":\"A\",\"t6\":\"AAAAAAAAAAAAAAAAAAAAAA==\",\"t4\":\"2013-02-20 06:42:39Z\",\"t5\":[\"aa\",\"bb\"]}"
                , actual);

        }
Пример #2
0
 public void JSONSerializerConstructorTest()
 {
     JSONParameters param = new JSONParameters(); // TODO: Initialize to an appropriate value
     JSONSerializer target = new JSONSerializer(param);
     Assert.IsNotNull(target);
 }