Вызвать событие насмешливого объекта и передать его в качестве объекта аргумента, используемого для вызова метода. ⇐ C#
Вызвать событие насмешливого объекта и передать его в качестве объекта аргумента, используемого для вызова метода.
У меня есть интерфейс IPeakCommunication и производный класс PeakCommunication. Внутри производного класса у меня есть реализация метода Send(RequestData request), который что-то делает, и, как я ожидаю, вызывает событие RequestReceived и передает туда аргумент request.
Я хотел бы создать модульные тесты для некоторых классов, которые взаимодействуют с IPeakCommunication, и вызвать метод Send(RequestData request). Но я понятия не имею, как создать Mock, который принимает объект из аргументов и использует его для вызова события RequestReceived.
публичный интерфейс IPeakCommunication: IDisposable { #регион Делегаты делегат void PeakRequestReceivedHandler (данные RequestData); #конечныйрегион #region События событие PeakRequestReceivedHandler? Запрос получен; #конечныйрегион #region Методы void Send (данные RequestData); #конечныйрегион } Код, который я пытался сделать:
var jackCommunication = новый Mock(); ockCommunication.Setup(x => x.Send(It.IsAny())) .Raises(x => x.RequestReceived += null, new object[] { /*аргумент из Send()?*/ } );
У меня есть интерфейс IPeakCommunication и производный класс PeakCommunication. Внутри производного класса у меня есть реализация метода Send(RequestData request), который что-то делает, и, как я ожидаю, вызывает событие RequestReceived и передает туда аргумент request.
Я хотел бы создать модульные тесты для некоторых классов, которые взаимодействуют с IPeakCommunication, и вызвать метод Send(RequestData request). Но я понятия не имею, как создать Mock, который принимает объект из аргументов и использует его для вызова события RequestReceived.
публичный интерфейс IPeakCommunication: IDisposable { #регион Делегаты делегат void PeakRequestReceivedHandler (данные RequestData); #конечныйрегион #region События событие PeakRequestReceivedHandler? Запрос получен; #конечныйрегион #region Методы void Send (данные RequestData); #конечныйрегион } Код, который я пытался сделать:
var jackCommunication = новый Mock(); ockCommunication.Setup(x => x.Send(It.IsAny())) .Raises(x => x.RequestReceived += null, new object[] { /*аргумент из Send()?*/ } );
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение