2017-02-17 6 views
1

FakeItEasyで生成したスタブを自分のクラスに挿入します。ある時点で、クラスは依存関係のイベントをサブスクライブします。私は私のテスト方法の一部として、その後、このイベントを呼び出すようにしたいが、それは動作していないよう:FakeItEasyスタブのイベントを呼び出す

var restApiManager = A.Fake<IRestApiManager>(); //IRestApiManager has Connected event 
var target = new ViewModel(restApiManager); 

target.Connect(); //some private method subscribes to RestApiManager.Connected 

restApiManager.Connected(); //obviously not working 

スタブからのイベントを起動する方法はありますか?

答えて

2

イベントの提起については、FakeItEasyドキュメントのRaising eventsトピックを参照してください。

あなたは、引数にリスナーにイベントの供給を依存し、この

restApiManager.Connected += Raise.With(arguments); 

またはいくつかの変種のようなものを呼び出すしたいと思います。

カスタムデリゲートを使用してイベントを定義した場合、あなたはtypeparamを供給する必要があります。

restApiManager.Connected += Raise.With<CustomEventHandler>(arguments); 
関連する問題