【发布时间】:2010-12-24 08:09:12
【问题描述】:
我正在使用 MVVM 模式开发 WPF 应用程序。我的 ViewModel 代码如下:
public bool EditModeEnabled
{
get { return _EditModeEnabled; }
set
{
_ModeEditModeEnabled = value;
OnPropertyChanged("EditModeEnabled");
OnPropertyChanged("CommentTextBoxVisibility");
}
}
OnPropertyChanged 是基类的虚方法,它只是引发PropertyChanged 事件。
我想测试PropertyChanged 事件引发以及我的测试方法:
public void EditModeEnabledTest()
{
var imageViewModel = TestHelper.GetTestImageViewModel();
var firedEvents = new List<string>();
imageViewModel.PropertyChanged += ((sender, e) => firedEvents.Add(e.PropertyName));
imageViewModel.Mode = true;
Assert.AreEqual(firedEvents.Count, 2);
Assert.IsTrue(firedEvents.Contains("EditModeEnabled"));
Assert.IsTrue(firedEvents.Contains("CommentTextBoxVisibility"));
...
}
这是测试 ProprtyChanged 事件的好方法吗?
【问题讨论】: