コード例 #1
0
ファイル: SimpleTypeTests.cs プロジェクト: ChrisMissal/Bender
        public void should_serialize_simple_nullable_type_properties()
        {
            var simpleTypes = new SimpleTypeProperties
            {
                String = null,
                NullableBoolean = null,
                NullableByte = null,
                NullableUnsignedByte = null,
                NullableShort = null,
                NullableUnsignedShort = null,
                NullableInteger = null,
                NullableUnsignedInteger = null,
                NullableLong = null,
                NullableUnsignedLong = null,
                NullableFloat = null,
                NullableDouble = null,
                NullableDecimal = null,
                NullableDateTime = null,
                NullableTimeSpan = null,
                NullableGuid = null,
                NullableEnum = null
            };

            var xml = Bender.Serializer.Create(x => x.PrettyPrintXml()).SerializeXml(simpleTypes);
            Debug.WriteLine(xml);

            xml.ShouldNotBeNull();
            var root = xml.ParseXml().Element("SimpleTypeProperties");
            root.ShouldNotBeNull();
            root.Element("String").IsEmpty.ShouldBeTrue();
            root.Element("NullableBoolean").IsEmpty.ShouldBeTrue();
            root.Element("NullableByte").IsEmpty.ShouldBeTrue();
            root.Element("NullableUnsignedByte").IsEmpty.ShouldBeTrue();
            root.Element("NullableShort").IsEmpty.ShouldBeTrue();
            root.Element("NullableUnsignedShort").IsEmpty.ShouldBeTrue();
            root.Element("NullableUnsignedInteger").IsEmpty.ShouldBeTrue();
            root.Element("NullableLong").IsEmpty.ShouldBeTrue();
            root.Element("NullableUnsignedLong").IsEmpty.ShouldBeTrue();
            root.Element("NullableFloat").IsEmpty.ShouldBeTrue();
            root.Element("NullableDouble").IsEmpty.ShouldBeTrue();
            root.Element("NullableDecimal").IsEmpty.ShouldBeTrue();
            root.Element("NullableDateTime").IsEmpty.ShouldBeTrue();
            root.Element("NullableTimeSpan").IsEmpty.ShouldBeTrue();
            root.Element("NullableGuid").IsEmpty.ShouldBeTrue();
            root.Element("NullableEnum").IsEmpty.ShouldBeTrue();
        }
コード例 #2
0
ファイル: SimpleTypeTests.cs プロジェクト: ChrisMissal/Bender
        public void should_serialize_simple_nullable_type_properties()
        {
            var simpleTypes = new SimpleTypeProperties
            {
                String = null,
                NullableBoolean = null,
                NullableByte = null,
                NullableUnsignedByte = null,
                NullableShort = null,
                NullableUnsignedShort = null,
                NullableInteger = null,
                NullableUnsignedInteger = null,
                NullableLong = null,
                NullableUnsignedLong = null,
                NullableFloat = null,
                NullableDouble = null,
                NullableDecimal = null,
                NullableDateTime = null,
                NullableTimeSpan = null,
                NullableGuid = null,
                NullableEnum = null
            };

            var json = Bender.Serializer.Create().SerializeJson(simpleTypes);
            Debug.WriteLine(json);

            json.ShouldNotBeNull();
            var types = json.ParseJson().JsonRoot();
            types.ShouldNotBeNull();
            types.JsonNullField("String").Value.ShouldBeEmpty();
            types.JsonNullField("NullableBoolean").Value.ShouldBeEmpty();
            types.JsonNullField("NullableByte").Value.ShouldBeEmpty();
            types.JsonNullField("NullableUnsignedByte").Value.ShouldBeEmpty();
            types.JsonNullField("NullableShort").Value.ShouldBeEmpty();
            types.JsonNullField("NullableUnsignedShort").Value.ShouldBeEmpty();
            types.JsonNullField("NullableUnsignedInteger").Value.ShouldBeEmpty();
            types.JsonNullField("NullableLong").Value.ShouldBeEmpty();
            types.JsonNullField("NullableUnsignedLong").Value.ShouldBeEmpty();
            types.JsonNullField("NullableFloat").Value.ShouldBeEmpty();
            types.JsonNullField("NullableDouble").Value.ShouldBeEmpty();
            types.JsonNullField("NullableDecimal").Value.ShouldBeEmpty();
            types.JsonNullField("NullableDateTime").Value.ShouldBeEmpty();
            types.JsonNullField("NullableTimeSpan").Value.ShouldBeEmpty();
            types.JsonNullField("NullableGuid").Value.ShouldBeEmpty();
            types.JsonNullField("NullableEnum").Value.ShouldBeEmpty();
        }
コード例 #3
0
ファイル: SimpleTypeTests.cs プロジェクト: ChrisMissal/Bender
        public void should_serialize_simple_type_properties()
        {
            var simpleTypes = new SimpleTypeProperties {
                    String = "hai",
                    Boolean = true, NullableBoolean = true,
                    Byte = 1, NullableByte = 1,
                    UnsignedByte = 2, NullableUnsignedByte = 2,
                    Short = 3, NullableShort = 3,
                    UnsignedShort = 4, NullableUnsignedShort = 4,
                    Integer = 5, NullableInteger = 5,
                    UnsignedInteger = 6, NullableUnsignedInteger = 6,
                    Long = 7, NullableLong = 7,
                    UnsignedLong = 8, NullableUnsignedLong = 8,
                    Float = 1.1F, NullableFloat = 1.1F,
                    Double = 1.2, NullableDouble = 1.2,
                    Decimal = 1.3M, NullableDecimal = 1.3M,
                    DateTime = DateTime.MaxValue, NullableDateTime = DateTime.MaxValue,
                    TimeSpan = TimeSpan.MaxValue, NullableTimeSpan = TimeSpan.MaxValue,
                    Guid = Guid.Empty, NullableGuid = Guid.Empty,
                    Enum = Enum.Value2, NullableEnum = Enum.Value2,
                    BoxedValue = Guid.Empty
                };

            var xml = Bender.Serializer.Create(x => x.PrettyPrintXml()).SerializeXml(simpleTypes);
            Debug.WriteLine(xml);

            xml.ShouldNotBeNull();
            var root = xml.ParseXml().Element("SimpleTypeProperties");
            root.ShouldNotBeNull();
            root.Element("String").Value.ShouldEqual(simpleTypes.String);
            root.Element("Boolean").Value.ShouldEqual(simpleTypes.Boolean.ToString().ToLower());
            root.Element("Byte").Value.ShouldEqual(simpleTypes.Byte.ToString());
            root.Element("UnsignedByte").Value.ShouldEqual(simpleTypes.UnsignedByte.ToString());
            root.Element("Short").Value.ShouldEqual(simpleTypes.Short.ToString());
            root.Element("UnsignedShort").Value.ShouldEqual(simpleTypes.UnsignedShort.ToString());
            root.Element("UnsignedInteger").Value.ShouldEqual(simpleTypes.UnsignedInteger.ToString());
            root.Element("Long").Value.ShouldEqual(simpleTypes.Long.ToString());
            root.Element("UnsignedLong").Value.ShouldEqual(simpleTypes.UnsignedLong.ToString());
            root.Element("Float").Value.ShouldEqual(simpleTypes.Float.ToString());
            root.Element("Double").Value.ShouldEqual(simpleTypes.Double.ToString());
            root.Element("Decimal").Value.ShouldEqual(simpleTypes.Decimal.ToString());
            root.Element("DateTime").Value.ShouldEqual(simpleTypes.DateTime.ToString());
            root.Element("TimeSpan").Value.ShouldEqual(simpleTypes.TimeSpan.ToString());
            root.Element("Guid").Value.ShouldEqual(simpleTypes.Guid.ToString());
            root.Element("Enum").Value.ShouldEqual(simpleTypes.Enum.ToString());
            root.Element("BoxedValue").Value.ShouldEqual(Guid.Empty.ToString());

            root.Element("NullableBoolean").Value.ShouldEqual(simpleTypes.NullableBoolean.ToString().ToLower());
            root.Element("NullableByte").Value.ShouldEqual(simpleTypes.NullableByte.ToString());
            root.Element("NullableUnsignedByte").Value.ShouldEqual(simpleTypes.NullableUnsignedByte.ToString());
            root.Element("NullableShort").Value.ShouldEqual(simpleTypes.NullableShort.ToString());
            root.Element("NullableUnsignedShort").Value.ShouldEqual(simpleTypes.NullableUnsignedShort.ToString());
            root.Element("NullableUnsignedInteger").Value.ShouldEqual(simpleTypes.NullableUnsignedInteger.ToString());
            root.Element("NullableLong").Value.ShouldEqual(simpleTypes.NullableLong.ToString());
            root.Element("NullableUnsignedLong").Value.ShouldEqual(simpleTypes.NullableUnsignedLong.ToString());
            root.Element("NullableFloat").Value.ShouldEqual(simpleTypes.NullableFloat.ToString());
            root.Element("NullableDouble").Value.ShouldEqual(simpleTypes.NullableDouble.ToString());
            root.Element("NullableDecimal").Value.ShouldEqual(simpleTypes.NullableDecimal.ToString());
            root.Element("NullableDateTime").Value.ShouldEqual(simpleTypes.NullableDateTime.ToString());
            root.Element("NullableTimeSpan").Value.ShouldEqual(simpleTypes.NullableTimeSpan.ToString());
            root.Element("NullableGuid").Value.ShouldEqual(simpleTypes.NullableGuid.ToString());
            root.Element("NullableEnum").Value.ShouldEqual(simpleTypes.NullableEnum.ToString());
        }
コード例 #4
0
ファイル: SimpleTypeTests.cs プロジェクト: ChrisMissal/Bender
        public void should_serialize_simple_type_properties()
        {
            var simpleTypes = new SimpleTypeProperties {
                    String = "hai",
                    Boolean = true, NullableBoolean = true,
                    Byte = 1, NullableByte = 1,
                    UnsignedByte = 2, NullableUnsignedByte = 2,
                    Short = 3, NullableShort = 3,
                    UnsignedShort = 4, NullableUnsignedShort = 4,
                    Integer = 5, NullableInteger = 5,
                    UnsignedInteger = 6, NullableUnsignedInteger = 6,
                    Long = 7, NullableLong = 7,
                    UnsignedLong = 8, NullableUnsignedLong = 8,
                    Float = 1.1F, NullableFloat = 1.1F,
                    Double = 1.2, NullableDouble = 1.2,
                    Decimal = 1.3M, NullableDecimal = 1.3M,
                    DateTime = DateTime.MaxValue, NullableDateTime = DateTime.MaxValue,
                    TimeSpan = TimeSpan.MaxValue, NullableTimeSpan = TimeSpan.MaxValue,
                    Guid = Guid.Empty, NullableGuid = Guid.Empty,
                    Enum = Enum.Value2, NullableEnum = Enum.Value2,
                    BoxedValue = Guid.Empty
                };

            var json = Bender.Serializer.Create().SerializeJson(simpleTypes);
            Debug.WriteLine(json);

            json.ShouldNotBeNull();
            var types = json.ParseJson().JsonRoot();
            types.ShouldNotBeNull();
            types.JsonStringField("String").Value.ShouldEqual(simpleTypes.String);
            types.JsonBooleanField("Boolean").Value.ShouldEqual(simpleTypes.Boolean.ToString().ToLower());
            types.JsonNumberField("Byte").Value.ShouldEqual(simpleTypes.Byte.ToString());
            types.JsonNumberField("UnsignedByte").Value.ShouldEqual(simpleTypes.UnsignedByte.ToString());
            types.JsonNumberField("Short").Value.ShouldEqual(simpleTypes.Short.ToString());
            types.JsonNumberField("UnsignedShort").Value.ShouldEqual(simpleTypes.UnsignedShort.ToString());
            types.JsonNumberField("UnsignedInteger").Value.ShouldEqual(simpleTypes.UnsignedInteger.ToString());
            types.JsonNumberField("Long").Value.ShouldEqual(simpleTypes.Long.ToString());
            types.JsonNumberField("UnsignedLong").Value.ShouldEqual(simpleTypes.UnsignedLong.ToString());
            types.JsonNumberField("Float").Value.ShouldEqual(simpleTypes.Float.ToString());
            types.JsonNumberField("Double").Value.ShouldEqual(simpleTypes.Double.ToString());
            types.JsonNumberField("Decimal").Value.ShouldEqual(simpleTypes.Decimal.ToString());
            types.JsonStringField("DateTime").Value.ShouldEqual(simpleTypes.DateTime.ToString());
            types.JsonStringField("TimeSpan").Value.ShouldEqual(simpleTypes.TimeSpan.ToString());
            types.JsonStringField("Guid").Value.ShouldEqual(simpleTypes.Guid.ToString());
            types.JsonStringField("Enum").Value.ShouldEqual(simpleTypes.Enum.ToString());
            types.JsonStringField("BoxedValue").Value.ShouldEqual(Guid.Empty.ToString());

            types.JsonBooleanField("NullableBoolean").Value.ShouldEqual(simpleTypes.NullableBoolean.ToString().ToLower());
            types.JsonNumberField("NullableByte").Value.ShouldEqual(simpleTypes.NullableByte.ToString());
            types.JsonNumberField("NullableUnsignedByte").Value.ShouldEqual(simpleTypes.NullableUnsignedByte.ToString());
            types.JsonNumberField("NullableShort").Value.ShouldEqual(simpleTypes.NullableShort.ToString());
            types.JsonNumberField("NullableUnsignedShort").Value.ShouldEqual(simpleTypes.NullableUnsignedShort.ToString());
            types.JsonNumberField("NullableUnsignedInteger").Value.ShouldEqual(simpleTypes.NullableUnsignedInteger.ToString());
            types.JsonNumberField("NullableLong").Value.ShouldEqual(simpleTypes.NullableLong.ToString());
            types.JsonNumberField("NullableUnsignedLong").Value.ShouldEqual(simpleTypes.NullableUnsignedLong.ToString());
            types.JsonNumberField("NullableFloat").Value.ShouldEqual(simpleTypes.NullableFloat.ToString());
            types.JsonNumberField("NullableDouble").Value.ShouldEqual(simpleTypes.NullableDouble.ToString());
            types.JsonNumberField("NullableDecimal").Value.ShouldEqual(simpleTypes.NullableDecimal.ToString());
            types.JsonStringField("NullableDateTime").Value.ShouldEqual(simpleTypes.NullableDateTime.ToString());
            types.JsonStringField("NullableTimeSpan").Value.ShouldEqual(simpleTypes.NullableTimeSpan.ToString());
            types.JsonStringField("NullableGuid").Value.ShouldEqual(simpleTypes.NullableGuid.ToString());
            types.JsonStringField("NullableEnum").Value.ShouldEqual(simpleTypes.NullableEnum.ToString());
        }