public void CreateInstance_PropertyNameCaseInsensitive() { //Arrange var options = KSqlDbJsonSerializerOptions.CreateInstance(); //Act var propertyNameCaseInsensitive = options.PropertyNameCaseInsensitive; //Assert propertyNameCaseInsensitive.Should().BeTrue(); }
public void CreateInstance_Converters() { //Arrange var options = KSqlDbJsonSerializerOptions.CreateInstance(); //Act var converters = options.Converters; //Assert converters.OfType <TimeSpanToStringConverter>().Any().Should().BeTrue(); }
public void Write() { //Arrange var converter = new TimeSpanToStringConverter(); using var stream = new MemoryStream(); using var writer = new Utf8JsonWriter(stream); var options = KSqlDbJsonSerializerOptions.CreateInstance(); var timeSpan = new TimeSpan(1, 1, 11); //Act converter.Write(writer, timeSpan, options); writer.Flush(); //Assert stream.ToArray().Length.Should().NotBe(0); }
/// <summary> /// Interception of JsonSerializerOptions. /// </summary> /// <param name="optionsAction">Action to configure the JsonSerializerOptions for the materialization of the incoming values.</param> /// <returns>The original KSqlDb context options builder</returns> public void SetJsonSerializerOptions(Action <JsonSerializerOptions> optionsAction) { JsonSerializerOptions ??= KSqlDbJsonSerializerOptions.CreateInstance(); optionsAction?.Invoke(JsonSerializerOptions); }