Skip to content

Commit 69ddcfd

Browse files
committed
Add test case for inheriting multiple class-level attributes
1 parent 6af95b5 commit 69ddcfd

File tree

1 file changed

+21
-1
lines changed

1 file changed

+21
-1
lines changed

tests/CommunityToolkit.Mvvm.UnitTests/Test_ObservablePropertyAttribute.cs

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -470,6 +470,15 @@ public void Test_NotifyRecipients_WithObservableRecipientAttribute_WithClassLeve
470470

471471
[TestMethod]
472472
public void Test_NotifyRecipients_WithInheritedObservableRecipientAttribute_WithClassLevelAttribute()
473+
{
474+
Test_NotifyRecipients_Test(
475+
factory: static messenger => new BroadcastingViewModelWithInheritedClassLevelAttribute(messenger),
476+
setter: static (model, value) => model.Name2 = value,
477+
propertyName: nameof(BroadcastingViewModelWithInheritedClassLevelAttribute.Name2));
478+
}
479+
480+
[TestMethod]
481+
public void Test_NotifyRecipients_WithInheritedObservableRecipientAttributeAndClassLevelAttribute()
473482
{
474483
Test_NotifyRecipients_Test(
475484
factory: static messenger => new BroadcastingViewModelWithInheritedAttributeAndClassLevelAttribute(messenger),
@@ -1203,6 +1212,17 @@ public BroadcastingViewModelWithClassLevelAttribute(IMessenger messenger)
12031212
private string? name;
12041213
}
12051214

1215+
partial class BroadcastingViewModelWithInheritedClassLevelAttribute : BroadcastingViewModelWithClassLevelAttribute
1216+
{
1217+
public BroadcastingViewModelWithInheritedClassLevelAttribute(IMessenger messenger)
1218+
: base(messenger)
1219+
{
1220+
}
1221+
1222+
[ObservableProperty]
1223+
private string? name2;
1224+
}
1225+
12061226
[ObservableRecipient]
12071227
[NotifyRecipients]
12081228
partial class BroadcastingViewModelWithAttributeAndClassLevelAttribute : ObservableObject
@@ -1211,7 +1231,7 @@ partial class BroadcastingViewModelWithAttributeAndClassLevelAttribute : Observa
12111231
private string? name;
12121232
}
12131233

1214-
partial class BroadcastingViewModelWithInheritedAttributeAndClassLevelAttribute : BroadcastingViewModelWithClassLevelAttribute
1234+
partial class BroadcastingViewModelWithInheritedAttributeAndClassLevelAttribute : BroadcastingViewModelWithAttributeAndClassLevelAttribute
12151235
{
12161236
public BroadcastingViewModelWithInheritedAttributeAndClassLevelAttribute(IMessenger messenger)
12171237
: base(messenger)

0 commit comments

Comments
 (0)