Это наиболее рекомендуемый подход
Однако в следующем примере показано, как использовать Assert.Raises()
для проверки события вашего предоставленного класса
var request = new Request();
var evt = Assert.Raises<EventArgs>(
h => request.StateChanged += h,
h => request.StateChanged -= h,
() => request.Approve());
Assert.NotNull(evt);
Assert.Equal(request, evt.Sender);
Assert.Equal(EventArgs.Empty, evt.Arguments);
Однако вашему обработчику событий потребуется быть обобщенным c делегатом
public event EventHandler<EventArgs> StateChanged;
вместо просто EventHandler
, чтобы Assert.Raises
работал должным образом.