public SpeedJsonConverter( SpeedJsonSerializationFormat serializationFormat = SpeedJsonSerializationFormat.AsMetresPerSecondWithUnit, LinearUnitJsonSerializationFormat unitSerializationFormat = LinearUnitJsonSerializationFormat.PredefinedAsString) : base( unitConverter: new SpeedUnitJsonConverter(unitSerializationFormat), serializationFormat: (QuantityJsonSerializationFormat)serializationFormat) { }
public SpeedSerializeTestData( Speed value, SpeedJsonSerializationFormat format, LinearUnitJsonSerializationFormat unitFormat, string expectedJsonPattern) : base(value, unitFormat, expectedJsonPattern) { Format = format; }
public void SerializeAndDeserializeWithMetresPerSecond_ShouldBeIdempotent(SpeedJsonSerializationFormat format, LinearUnitJsonSerializationFormat unitFormat) { // arrange var speed = Fixture.Create <Speed>(); var converter = new SpeedJsonConverter(format, unitFormat); // act string serializedSpeed1 = JsonConvert.SerializeObject(speed, converter); var deserializedSpeed1 = JsonConvert.DeserializeObject <Speed>(serializedSpeed1, converter); string serializedSpeed2 = JsonConvert.SerializeObject(deserializedSpeed1, converter); var deserializedSpeed2 = JsonConvert.DeserializeObject <Speed>(serializedSpeed2, converter); // assert deserializedSpeed1.Should().Be(speed); deserializedSpeed2.Should().Be(speed); deserializedSpeed2.Should().Be(deserializedSpeed1); serializedSpeed2.Should().Be(serializedSpeed1); }