public void PropertyChanged() { var sent = new PropertyChangedEventArgs("Status"); PropertyChangedEventArgs received = null; using (var channel = new IntelChannel()) { channel.PropertyChanged += (sender, e) => { Assert.IsNull(received, "PropertyChanged was raised multiple times."); Assert.AreEqual(channel, sender); received = e; }; channel.OnPropertyChanged(sent); Thread.Sleep(10); } Assert.AreEqual(sent, received); }