public void ChangeInHumidity_HumidityChangedEventRaised() { // Arrange WeatherMonitorFixture weatherMonitorFixture = new WeatherMonitorFixture(); Humidity result = null; WeatherData expected = new WeatherData(new Temperature(0), new Humidity(60)); weatherMonitorFixture.SetExpectedWeatherData(expected); weatherMonitorFixture.Target.HumidityChanged += (sender, newHumidity) => result = newHumidity; // Act weatherMonitorFixture.Target.Start(TimeSpan.FromMilliseconds(0) /*not used*/); Waiter.Until(() => result != null); // Assert result.Should().Be(expected.Humidity); }