Skip to content

Commit 5240bf7

Browse files
authored
Merge pull request #963 from EdwardCooke/ec-privateyamlmember
Added private member yaml member attrribute regression test
2 parents c3b5bd0 + 09a6ff5 commit 5240bf7

File tree

1 file changed

+23
-2
lines changed

1 file changed

+23
-2
lines changed

YamlDotNet.Test/Serialization/DeserializerTest.cs

+23-2
Original file line numberDiff line numberDiff line change
@@ -377,7 +377,7 @@ public void SerializeStateMethodsGetCalledOnce()
377377
Assert.Equal(1, test.OnDeserializedCallCount);
378378
Assert.Equal(1, test.OnDeserializingCallCount);
379379
}
380-
380+
381381
[Fact]
382382
public void DeserializeConcurrently()
383383
{
@@ -389,7 +389,7 @@ public void DeserializeConcurrently()
389389
// Failures don't occur consistently - running repeatedly increases the chances
390390
RunTest();
391391
}
392-
392+
393393
Assert.Empty(exceptions);
394394

395395
void RunTest()
@@ -444,6 +444,27 @@ public void WithCaseInsensitivePropertyMatching_IgnoreCase()
444444
Assert.Equal("Value", test.Field);
445445
}
446446

447+
[Fact]
448+
public void PrivateMembersExposeYamlMemberAttribute()
449+
{
450+
var yaml = "key: value";
451+
452+
var result = new DeserializerBuilder()
453+
.IncludeNonPublicProperties()
454+
.Build()
455+
.Deserialize<PrivateYamlMemberTest>(yaml);
456+
457+
Assert.Equal("value", result.PublicValue);
458+
}
459+
460+
class PrivateYamlMemberTest
461+
{
462+
[YamlMember(Alias = "key")]
463+
private string YamlValue { get; set; } = null!;
464+
465+
public string PublicValue => YamlValue;
466+
}
467+
447468
#if NET8_0_OR_GREATER
448469
[Fact]
449470
public void WithRequiredMemberSet_ThrowsWhenFieldNotSet()

0 commit comments

Comments
 (0)