public void Serialize_WithConverter() { var converter = new QuantityJsonConverter(UnitProvider.Default); var obj = new TestObject { Distance = 1.23 * Length.Metre, Time = null }; var json = JsonConvert.SerializeObject(obj, converter); Assert.AreEqual("{\"Distance\":\"1.23 m\",\"Time\":null,\"Quantities\":[]}", json); }
public void Serialize_NorwegianCulture_ShouldBeSerializedToInvariantCulture() { var obj = new TestObject { Distance = 1.23 * Length.Metre, Time = null }; using (CurrentCulture.TemporaryChangeTo("nb-NO")) { JsConfig.IncludeNullValues = true; var json = JsonSerializer.SerializeToString(obj); Assert.AreEqual("{\"Distance\":\"1.23 m\",\"Time\":null,\"Quantities\":[]}", json); } }
public void Serialize() { var obj = new TestObject { Distance = 1.23 * Length.Metre, Time = null }; obj.Quantities.Add(10 * Temperature.DegreeCelsius); obj.Quantities.Add(25 * Mass.Kilogram); JsConfig.IncludeNullValues = true; // JsConfig<IQuantity>.SerializeFn = q => q.ToString(null, CultureInfo.InvariantCulture); var json = JsonSerializer.SerializeToString(obj); Assert.AreEqual("{\"Distance\":\"1.23 m\",\"Time\":null,\"Quantities\":[\"10 °C\",\"25 kg\"]}", json); }
public void Serialize_WithoutConverter() { var obj = new TestObject { Distance = 1.23 * Length.Metre, Time = null }; var json = JsonConvert.SerializeObject(obj); Assert.AreEqual("{\"Distance\":{\"XmlValue\":\"1.23 m\"},\"Time\":null,\"Quantities\":[]}", json); }