2017-02-17 1 views
1

J'injecte un talon généré avec FakeItEasy à ma classe. À un moment donné, ma classe est abonnée à l'événement de dépendance. Je veux invoquer cet événement par la suite dans le cadre de ma méthode d'essai, mais il ne semble pas fonctionner:Invoke event pour le talon 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 

Est-il possible d'invoquer un événement d'un bout?

Répondre

2

L'augmentation d'événement est traitée dans la rubrique Raising events de la documentation FakeItEasy.

Vous voulez appeler quelque chose comme ça

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

ou une variante, en fonction des arguments des fournitures d'événements aux auditeurs.

Si vous avez défini l'événement à l'aide d'un délégué personnalisé, vous devez fournir un typeParam:

restApiManager.Connected += Raise.With<CustomEventHandler>(arguments);