/// <summary> /// Populate the email addresses /// </summary> protected override void PopulateEmailAddress() { this.EmailAddress.Clear(); var defaultEmail = (this.Thing.DefaultEmailAddress == null) ? Guid.Empty : this.Thing.DefaultEmailAddress.Iid; foreach (var thing in this.Thing.EmailAddress.Where(t => t.ChangeKind != ChangeKind.Delete)) { var row = new EmailAddressRowViewModel(thing, this.Session, this); this.EmailAddress.Add(row); row.IsDefault = thing.Iid == defaultEmail; } this.SelectedDefaultEmailAddress = this.Thing.DefaultEmailAddress; }
public void VerifyThatTheIsDefaultPropertyIsReactiveProperty() { this.viewmodel = new EmailAddressRowViewModel(this.email, this.session.Object, null); Assert.IsFalse(this.viewmodel.IsDefault); var eventHandlerCount = 0; this.viewmodel.PropertyChanged += (o, e) => { eventHandlerCount++; }; this.viewmodel.IsDefault = true; Assert.IsTrue(this.viewmodel.IsDefault); Assert.AreEqual(1, eventHandlerCount); }