public void EmittedSerializerSerializesNullIntoEmptyString() { StringConverter converter = new StringConverter(); string? s = null; DynamicMethod serialize = new DynamicMethod("Serialize", typeof(string), new Type[] { typeof(string), typeof(IFormatProvider), typeof(char) }, typeof(StringConverterTests)); serialize.GetILGenerator() .DeclareLocal <string>(out LocalBuilder local) .Newobj <StringBuilder>() .Ldarg_0() .Emit(gen => converter.EmitAppendToStringBuilder(gen, local, null, null)) .Callvirt <StringBuilder>("ToString") .Ret(); string?serialized = (string?)serialize.Invoke(null, new object?[] { s, CultureInfo.InvariantCulture, ',' }) !; serialized.Should().Be(""); }