コード例 #1
0
        public void ToAmorphousDynamicRow_FromString()
        {
            var str = @"{name: ""Orlov"", StringArray: [""a"", null, ""b""]}";

            var row = new RowWithArrays();

            JSONReader.ToRow(row, str.JSONToDataObject() as JSONDataMap);

            Assert.AreEqual("Orlov", row.Name);

            Assert.IsNotNull(row.StringArray);
            Assert.AreEqual(3, row.StringArray.Length);

            Assert.AreEqual("a", row.StringArray[0]);
            Assert.AreEqual(null, row.StringArray[1]);
            Assert.AreEqual("b", row.StringArray[2]);
        }
コード例 #2
0
ファイル: JSONtoRow.cs プロジェクト: kinpro/nfx
        public void ToAmorphousDynamicRow_FromString()
        {
          var str = @"{name: ""Orlov"", StringArray: [""a"", null, ""b""]}";

          var row = new RowWithArrays();

          JSONReader.ToRow(row, str.JSONToDataObject() as JSONDataMap);

          Assert.AreEqual("Orlov", row.Name);
          
          Assert.IsNotNull( row.StringArray );
          Assert.AreEqual(3, row.StringArray.Length );

          Assert.AreEqual("a",  row.StringArray[0] );
          Assert.AreEqual(null, row.StringArray[1] );
          Assert.AreEqual("b",  row.StringArray[2] );
        }
コード例 #3
0
ファイル: JSONtoRow.cs プロジェクト: itadapter/nfx
        public void ToTypedRow_Arrays_FromString_ULong()
        {
            var str = @"{UInt64: 123, UInt64Array: [18446744073709551615, 0, 124], UInt64NArray: [null, 0, 18446744073709551615]}";

            var row = new RowWithArrays();

            JSONReader.ToRow(row, str.JSONToDataObject() as JSONDataMap);

            Assert.AreEqual(123, row.UInt64);

            Assert.IsNotNull(row.UInt64Array);
            Assert.AreEqual(3, row.UInt64Array.Length);
            Assert.AreEqual(ulong.MaxValue, row.UInt64Array[0]);
            Assert.AreEqual(0, row.UInt64Array[1]);
            Assert.AreEqual(124, row.UInt64Array[2]);

            Assert.IsNotNull(row.UInt64NArray);
            Assert.AreEqual(3, row.UInt64NArray.Length);
            Assert.AreEqual(null, row.UInt64NArray[0]);
            Assert.AreEqual(0, row.UInt64NArray[1]);
            Assert.AreEqual(ulong.MaxValue, row.UInt64NArray[2]);
        }
コード例 #4
0
ファイル: JSONtoRow.cs プロジェクト: itadapter/nfx
        public void ToTypedRow_Arrays_FromString_UShorts()
        {
            var str = @"{UInt16: 123, UInt16Array: [65535, 0, 12345], UInt16NArray: [null, 0, 65535]}";

            var row = new RowWithArrays();

            JSONReader.ToRow(row, str.JSONToDataObject() as JSONDataMap);

            Assert.AreEqual(123, row.UInt16);

            Assert.IsNotNull(row.UInt16Array);
            Assert.AreEqual(3, row.UInt16Array.Length);
            Assert.AreEqual(ushort.MaxValue, row.UInt16Array[0]);
            Assert.AreEqual(0, row.UInt16Array[1]);
            Assert.AreEqual(12345, row.UInt16Array[2]);

            Assert.IsNotNull(row.UInt16NArray);
            Assert.AreEqual(3, row.UInt16NArray.Length);
            Assert.AreEqual(null, row.UInt16NArray[0]);
            Assert.AreEqual(0, row.UInt16NArray[1]);
            Assert.AreEqual(ushort.MaxValue, row.UInt16NArray[2]);
        }
コード例 #5
0
ファイル: JSONtoRow.cs プロジェクト: itadapter/nfx
        public void ToTypedRow_Arrays_FromString_Single()
        {
            var str = @"{Single: 123.456, SingleArray: [3.4028E+38, 0, -3.402E+38], SingleNArray: [null, 0, 3.4028]}";

            var row = new RowWithArrays();

            JSONReader.ToRow(row, str.JSONToDataObject() as JSONDataMap);

            Assert.AreEqual(123.456F, row.Single);

            Assert.IsNotNull(row.SingleArray);
            Assert.AreEqual(3, row.SingleArray.Length);
            Assert.AreEqual(3.4028E+38F, row.SingleArray[0]);
            Assert.AreEqual(0, row.SingleArray[1]);
            Assert.AreEqual(-3.402E+38F, row.SingleArray[2]);

            Assert.IsNotNull(row.SingleNArray);
            Assert.AreEqual(3, row.SingleNArray.Length);
            Assert.AreEqual(null, row.SingleNArray[0]);
            Assert.AreEqual(0, row.SingleNArray[1]);
            Assert.AreEqual(3.4028F, row.SingleNArray[2]);
        }
コード例 #6
0
ファイル: JSONtoRow.cs プロジェクト: itadapter/nfx
        public void ToTypedRow_Arrays_FromString_UInt()
        {
            var str = @"{UInt32: 123, UInt32Array: [4294967295, 0, 124], UInt32NArray: [null, 0, 4294967295]}";

            var row = new RowWithArrays();

            JSONReader.ToRow(row, str.JSONToDataObject() as JSONDataMap);

            Assert.AreEqual(123, row.UInt32);

            Assert.IsNotNull(row.UInt32Array);
            Assert.AreEqual(3, row.UInt32Array.Length);
            Assert.AreEqual(uint.MaxValue, row.UInt32Array[0]);
            Assert.AreEqual(0, row.UInt32Array[1]);
            Assert.AreEqual(124, row.UInt32Array[2]);

            Assert.IsNotNull(row.UInt32NArray);
            Assert.AreEqual(3, row.UInt32NArray.Length);
            Assert.AreEqual(null, row.UInt32NArray[0]);
            Assert.AreEqual(0, row.UInt32NArray[1]);
            Assert.AreEqual(uint.MaxValue, row.UInt32NArray[2]);
        }
コード例 #7
0
ファイル: JSONtoRow.cs プロジェクト: itadapter/nfx
        public void ToTypedRow_Arrays_FromString_SBytes()
        {
            var str = @"{Int8: -56, Int8Array: [-1, 0, 127], Int8NArray: [null, 0, 127]}";

            var row = new RowWithArrays();

            JSONReader.ToRow(row, str.JSONToDataObject() as JSONDataMap);

            Assert.AreEqual(-56, row.Int8);

            Assert.IsNotNull(row.Int8Array);
            Assert.AreEqual(3, row.Int8Array.Length);
            Assert.AreEqual(-1, row.Int8Array[0]);
            Assert.AreEqual(0, row.Int8Array[1]);
            Assert.AreEqual(127, row.Int8Array[2]);

            Assert.IsNotNull(row.Int8NArray);
            Assert.AreEqual(3, row.Int8NArray.Length);
            Assert.AreEqual(null, row.Int8NArray[0]);
            Assert.AreEqual(0, row.Int8NArray[1]);
            Assert.AreEqual(127, row.Int8NArray[2]);
        }
コード例 #8
0
ファイル: JSONtoRow.cs プロジェクト: itadapter/nfx
        public void ToTypedRow_Arrays_FromString_Shorts()
        {
            var str = @"{Int16: 12345, Int16Array: [32767, 0, -32768], Int16NArray: [null, 0, 32767]}";

            var row = new RowWithArrays();

            JSONReader.ToRow(row, str.JSONToDataObject() as JSONDataMap);

            Assert.AreEqual(12345, row.Int16);

            Assert.IsNotNull(row.Int16Array);
            Assert.AreEqual(3, row.Int16Array.Length);
            Assert.AreEqual(short.MaxValue, row.Int16Array[0]);
            Assert.AreEqual(0, row.Int16Array[1]);
            Assert.AreEqual(short.MinValue, row.Int16Array[2]);

            Assert.IsNotNull(row.Int16NArray);
            Assert.AreEqual(3, row.Int16NArray.Length);
            Assert.AreEqual(null, row.Int16NArray[0]);
            Assert.AreEqual(0, row.Int16NArray[1]);
            Assert.AreEqual(short.MaxValue, row.Int16NArray[2]);
        }
コード例 #9
0
ファイル: JSONtoRow.cs プロジェクト: itadapter/nfx
        public void ToTypedRow_Arrays_FromString_Long()
        {
            var str = @"{Int64: 123, Int64Array: [9223372036854775807, 0, -9223372036854775808], Int64NArray: [null, 0, 9223372036854775807]}";

            var row = new RowWithArrays();

            JSONReader.ToRow(row, str.JSONToDataObject() as JSONDataMap);

            Assert.AreEqual(123, row.Int64);

            Assert.IsNotNull(row.Int64Array);
            Assert.AreEqual(3, row.Int64Array.Length);
            Assert.AreEqual(long.MaxValue, row.Int64Array[0]);
            Assert.AreEqual(0, row.Int64Array[1]);
            Assert.AreEqual(long.MinValue, row.Int64Array[2]);

            Assert.IsNotNull(row.Int64NArray);
            Assert.AreEqual(3, row.Int64NArray.Length);
            Assert.AreEqual(null, row.Int64NArray[0]);
            Assert.AreEqual(0, row.Int64NArray[1]);
            Assert.AreEqual(long.MaxValue, row.Int64NArray[2]);
        }
コード例 #10
0
ファイル: JSONtoRow.cs プロジェクト: itadapter/nfx
        public void ToTypedRow_Arrays_FromString_Row()
        {
            var str =
            @"{
                Row: { Name: ""Ivan"", Int32Array: [1, 0, -12345] },
                RowArray:
                    [
                        { Name: ""John"", Int8: 123 },
                        { Name: ""Anna"", Single: 123.567 }
                    ]
            }";

            var row = new RowWithArrays();
            JSONReader.ToRow(row, str.JSONToDataObject() as JSONDataMap);

            Assert.IsNotNull(row.Row);
            Assert.AreEqual("Ivan", row.Row.Name);
            Assert.IsNotNull(row.Row.Int32Array);
            Assert.AreEqual(3, row.Row.Int32Array.Length);
            Assert.AreEqual(1, row.Row.Int32Array[0]);
            Assert.AreEqual(0, row.Row.Int32Array[1]);
            Assert.AreEqual(-12345, row.Row.Int32Array[2]);

            Assert.IsNotNull(row.RowArray);
            Assert.AreEqual(2, row.RowArray.Length);
            Assert.IsNotNull(row.RowArray[0]);
            Assert.AreEqual("John", row.RowArray[0].Name);
            Assert.AreEqual(123, row.RowArray[0].Int8);
            Assert.IsNotNull(row.RowArray[1]);
            Assert.AreEqual("Anna", row.RowArray[1].Name);
            Assert.AreEqual(123.567F, row.RowArray[1].Single);
        }
コード例 #11
0
ファイル: JSONtoRow.cs プロジェクト: itadapter/nfx
        public void ToTypedRow_Arrays_FromString_Int()
        {
            var str = @"{Int32: 123, Int32Array: [2147483647, 0, -2147483648], Int32NArray: [null, 0, 2147483647]}";

            var row = new RowWithArrays();

            JSONReader.ToRow(row, str.JSONToDataObject() as JSONDataMap);

            Assert.AreEqual(123, row.Int32);

            Assert.IsNotNull(row.Int32Array);
            Assert.AreEqual(3, row.Int32Array.Length);
            Assert.AreEqual(int.MaxValue, row.Int32Array[0]);
            Assert.AreEqual(0, row.Int32Array[1]);
            Assert.AreEqual(int.MinValue, row.Int32Array[2]);

            Assert.IsNotNull(row.Int32NArray);
            Assert.AreEqual(3, row.Int32NArray.Length);
            Assert.AreEqual(null, row.Int32NArray[0]);
            Assert.AreEqual(0, row.Int32NArray[1]);
            Assert.AreEqual(int.MaxValue, row.Int32NArray[2]);
        }
コード例 #12
0
ファイル: JSONtoRow.cs プロジェクト: itadapter/nfx
        public void ToTypedRow_Arrays_FromString_Guid()
        {
            var guid1 = Guid.NewGuid();
            var guid2 = Guid.NewGuid();
            var guid3 = Guid.NewGuid();
            var str = "{" + @"Guid: ""{0}"", GuidArray: [""{0}"", ""{1}"", ""{2}""], GuidNArray: [""{0}"", null, ""{2}""]".Args(guid1, guid2, guid3) + "}";

            var row = new RowWithArrays();

            JSONReader.ToRow(row, str.JSONToDataObject() as JSONDataMap);

            Assert.AreEqual(guid1, row.Guid);

            Assert.IsNotNull(row.GuidArray);
            Assert.AreEqual(3, row.GuidArray.Length);
            Assert.AreEqual(guid1, row.GuidArray[0]);
            Assert.AreEqual(guid2, row.GuidArray[1]);
            Assert.AreEqual(guid3, row.GuidArray[2]);

            Assert.IsNotNull(row.GuidNArray);
            Assert.AreEqual(3, row.GuidNArray.Length);
            Assert.AreEqual(guid1, row.GuidNArray[0]);
            Assert.AreEqual(null, row.GuidNArray[1]);
            Assert.AreEqual(guid3, row.GuidNArray[2]);
        }
コード例 #13
0
ファイル: JSONtoRow.cs プロジェクト: itadapter/nfx
        public void ToTypedRow_Arrays_FromString_GDID()
        {
            var gdid1 = new GDID(4000000000, 8000000000);
            var gdid2 = new GDID(100002, 1, 8000000000);
            var gdid3 = new GDID(123, 123456789);
            var str = @"{" + @"GDID: ""{0}"", GDIDArray: [""{0}"", ""{1}"", ""{2}""], GDIDNArray: [""{0}"", null, ""{2}""]".Args(gdid1, gdid2, gdid3) + "}";

            var row = new RowWithArrays();

            JSONReader.ToRow(row, str.JSONToDataObject() as JSONDataMap);

            Assert.AreEqual(gdid1, row.GDID);

            Assert.IsNotNull(row.GDIDArray);
            Assert.AreEqual(3, row.GDIDArray.Length);
            Assert.AreEqual(gdid1, row.GDIDArray[0]);
            Assert.AreEqual(gdid2, row.GDIDArray[1]);
            Assert.AreEqual(gdid3, row.GDIDArray[2]);

            Assert.IsNotNull(row.GDIDNArray);
            Assert.AreEqual(3, row.GDIDNArray.Length);
            Assert.AreEqual(gdid1, row.GDIDNArray[0]);
            Assert.AreEqual(null, row.GDIDNArray[1]);
            Assert.AreEqual(gdid3, row.GDIDNArray[2]);
        }
コード例 #14
0
ファイル: JSONtoRow.cs プロジェクト: itadapter/nfx
        public void ToTypedRow_Arrays_FromString_Double()
        {
            var str = @"{Double: 123.456, DoubleArray: [1.79769E+308, 0, -1.7976931E+308], DoubleNArray: [null, 0, 3.482347E+38]}";

            var row = new RowWithArrays();

            JSONReader.ToRow(row, str.JSONToDataObject() as JSONDataMap);

            Assert.AreEqual(123.456D, row.Double);

            Assert.IsNotNull(row.DoubleArray);
            Assert.AreEqual(3, row.DoubleArray.Length);
            Assert.AreEqual(1.79769E+308, row.DoubleArray[0]);
            Assert.AreEqual(0, row.DoubleArray[1]);
            Assert.AreEqual(-1.7976931E+308, row.DoubleArray[2]);

            Assert.IsNotNull(row.DoubleNArray);
            Assert.AreEqual(3, row.DoubleNArray.Length);
            Assert.AreEqual(null, row.DoubleNArray[0]);
            Assert.AreEqual(0, row.DoubleNArray[1]);
            Assert.AreEqual(3.482347E+38, row.DoubleNArray[2]);
        }
コード例 #15
0
ファイル: JSONtoRow.cs プロジェクト: itadapter/nfx
        public void ToTypedRow_Arrays_FromString_Bytes()
        {
            var str = @"{UInt8: 255, UInt8Array: [1, 0, 255], UInt8NArray: [null, 0, 124]}";

            var row = new RowWithArrays();

            JSONReader.ToRow(row, str.JSONToDataObject() as JSONDataMap);

            Assert.AreEqual(255, row.UInt8);

            Assert.IsNotNull(row.UInt8Array);
            Assert.AreEqual(3, row.UInt8Array.Length);
            Assert.AreEqual(1, row.UInt8Array[0]);
            Assert.AreEqual(0, row.UInt8Array[1]);
            Assert.AreEqual(255, row.UInt8Array[2]);

            Assert.IsNotNull(row.UInt8NArray);
            Assert.AreEqual(3, row.UInt8NArray.Length);
            Assert.AreEqual(null, row.UInt8NArray[0]);
            Assert.AreEqual(0, row.UInt8NArray[1]);
            Assert.AreEqual(124, row.UInt8NArray[2]);
        }