SilverlightアプリケーションのviewModelに次のようなものがあります。
public void OnSelectedItemChanged(TreeView treeView)
{
if (treeView.SelectedItem is Customer)
{
var customer = treeView.SelectedItem as Customer;
if (customer.IsSpecial)
{
treeView.SelectItem(specialNode);
...
}
}
ロジックは気にしないでください(デモンストレーション専用です)。アプリケーションは正常に動作します。私の質問は、このメソッドの単体テストを作成することを厳密に実現しています。SelectedItemやSelectItemなどを正常に実行できるテストハーネスを作成できないようです。言い換えれば、私は私のセットアップでこのようなことをする必要があるでしょう。
TreeView tv = new TreeView();
var item = new TreeViewItem();
tv.ItemsSource = new List<object> { item };
tv.SelectItem(item); // does not work
この方法をテストする方法はありますか?