テストしようとしている非常に単純な方法があります。_interactionService は、顧客の削除についてユーザーに確認を求めるダイアログを表示します。ボックスで適切なボタンをクリックすると、指定されたアクションが呼び出されます。アクションはコンテキストを操作し、変更を保存します。保存が完了すると、別のアクションが呼び出されます。
private void Delete(object entity)
{
_interactionService.ShowConfirmationBox("Delete?", "Are you sure you want to delete this customer?", () =>
{
Customer customer = entity as Customer;
Context.Attach(customer);
Context.Delete(customer);
Context.Save(() => DoSomethingElseWhenSaveComplete);
});
}
このメソッドをテストする方法がわかりません。サービスとコンテキストをモックしましたが、クロージャーをテストするにはどうすればよいですか?