コード例 #1
0
        private void averDataAreEqual(TypicalData data, TypicalData got)
        {
            Aver.IsNotNull(got);
            Aver.AreNotSameRef(data, got);

            Aver.AreEqual(data.Guid, got.Guid);
            Aver.AreEqual(data.True, got.True);
            Aver.AreEqual(data.False, got.False);
            Aver.AreEqual(data.CharMin, got.CharMin);
            Aver.AreEqual(data.CharMax, got.CharMax);
            Aver.AreEqual(data.SByteMin, got.SByteMin);
            Aver.AreEqual(data.SByteMax, got.SByteMax);
            Aver.AreEqual(data.ByteMin, got.ByteMin);
            Aver.AreEqual(data.ByteMax, got.ByteMax);
            Aver.AreEqual(data.Int16Min, got.Int16Min);
            Aver.AreEqual(data.Int16Max, got.Int16Max);
            Aver.AreEqual(data.UInt16Min, got.UInt16Min);
            Aver.AreEqual(data.UInt16Max, got.UInt16Max);
            Aver.AreEqual(data.Int32Min, got.Int32Min);
            Aver.AreEqual(data.Int32Max, got.Int32Max);
            Aver.AreEqual(data.UInt32Min, got.UInt32Min);
            Aver.AreEqual(data.UInt32Max, got.UInt32Max);
            Aver.AreEqual(data.Int64Min, got.Int64Min);
            Aver.AreEqual(data.Int64Max, got.Int64Max);
            Aver.AreEqual(data.UInt64Min, got.UInt64Min);
            Aver.AreEqual(data.UInt64Max, got.UInt64Max);
            Aver.AreEqual(data.SingleEps, got.SingleEps);
            Aver.AreEqual(data.SingleMin, got.SingleMin);
            Aver.AreEqual(data.SingleMax, got.SingleMax);
            Aver.AreEqual(data.SingleNaN, got.SingleNaN);
            Aver.AreEqual(data.SinglePosInf, got.SinglePosInf);
            Aver.AreEqual(data.SingleNegInf, got.SingleNegInf);
            Aver.AreEqual(data.DoubleEps, got.DoubleEps);
            Aver.AreEqual(data.DoubleMin, got.DoubleMin);
            Aver.AreEqual(data.DoubleMax, got.DoubleMax);
            Aver.AreEqual(data.DoubleNaN, got.DoubleNaN);
            Aver.AreEqual(data.DoublePosInf, got.DoublePosInf);
            Aver.AreEqual(data.DoubleNegInf, got.DoubleNegInf);
            Aver.AreEqual(data.DecimalMin, got.DecimalMin);
            Aver.AreEqual(data.DecimalMax, got.DecimalMax);
            Aver.AreEqual(data.DecimalZero, got.DecimalZero);
            Aver.AreEqual(data.DecimalOne, got.DecimalOne);
            Aver.AreEqual(data.DecimalMOne, got.DecimalMOne);
            Aver.AreEqual(data.DateTimeMin, got.DateTimeMin);
            Aver.AreEqual(data.DateTimeMax, got.DateTimeMax);
            Aver.AreEqual(data.DateTimeNow, got.DateTimeNow);
            Aver.AreEqual(data.DateTimeUtc, got.DateTimeUtc);
            Aver.AreEqual(data.TimeSpanMin, got.TimeSpanMin);
            Aver.AreEqual(data.TimeSpanMax, got.TimeSpanMax);
            Aver.AreEqual(data.StringEmpty, got.StringEmpty);
            Aver.AreEqual(data.StringNull, got.StringNull);
            Aver.AreEqual(data.String, got.String);
        }
コード例 #2
0
        public void SerializeTypicalData()
        {
            var ser = new BSONSerializer(new BSONTypeResolver(typeof(TypicalData)));

            var data = new TypicalData
            {
                Guid         = Guid.NewGuid(),
                True         = true,
                False        = false,
                CharMin      = Char.MinValue,
                CharMax      = Char.MaxValue,
                SByteMin     = SByte.MinValue,
                SByteMax     = SByte.MaxValue,
                ByteMin      = Byte.MinValue,
                ByteMax      = Byte.MaxValue,
                Int16Min     = Int16.MinValue,
                Int16Max     = Int16.MaxValue,
                UInt16Min    = UInt16.MinValue,
                UInt16Max    = UInt16.MaxValue,
                Int32Min     = Int32.MinValue,
                Int32Max     = Int32.MaxValue,
                UInt32Min    = UInt32.MinValue,
                UInt32Max    = UInt32.MaxValue,
                Int64Min     = Int64.MinValue,
                Int64Max     = Int64.MaxValue,
                UInt64Min    = UInt64.MinValue,
                UInt64Max    = UInt64.MaxValue,
                SingleEps    = Single.Epsilon,
                SingleMin    = Single.MinValue,
                SingleMax    = Single.MaxValue,
                SingleNaN    = Single.NaN,
                SinglePosInf = Single.PositiveInfinity,
                SingleNegInf = Single.NegativeInfinity,
                DoubleEps    = Double.Epsilon,
                DoubleMin    = Double.MinValue,
                DoubleMax    = Double.MaxValue,
                DoubleNaN    = Double.NaN,
                DoublePosInf = Double.PositiveInfinity,
                DoubleNegInf = Double.NegativeInfinity,
                DecimalMin   = RowConverter.MIN_DECIMAL,
                DecimalMax   = RowConverter.MAX_DECIMAL,
                DecimalZero  = Decimal.Zero,
                DecimalOne   = Decimal.One,
                DecimalMOne  = Decimal.MinusOne,
                DateTimeMin  = DateTime.MinValue,
                DateTimeMax  = DateTime.MaxValue,
                DateTimeNow  = DateTime.Now,
                DateTimeUtc  = DateTime.UtcNow,
                TimeSpanMin  = TimeSpan.MinValue,
                TimeSpanMax  = TimeSpan.MaxValue,
                StringEmpty  = String.Empty,
                StringNull   = null,
                String       = "TypicalString",
            };

            var doc = ser.Serialize(data);

            Console.WriteLine(doc.ToJSON(JSONWritingOptions.PrettyPrint));

            Aver.IsTrue(doc.IndexOfName(ser.TypeIDFieldName) >= 0);

            var got = ser.Deserialize(doc) as TypicalData;

            averDataAreEqual(data, got);
        }