public void SelectingViewInOutlookBarControlPublishOutlookBarEvent() { var control = new OutlookBarControl(); DependencyObject model = new DependencyObject(); MockEventAggregator eventAggregator = new MockEventAggregator(); MockOutlookBarEvent outlookBarEvent = new MockOutlookBarEvent(); eventAggregator.AddMapping<OutlookBarEvent>(outlookBarEvent); IRegionAdapter adapter = new OutlookBarControlRegionAdapter(eventAggregator); var region = adapter.Initialize(control); region.Add(model); Assert.IsFalse(outlookBarEvent.PublishCalled); control.SelectedItem = model; Assert.IsTrue(outlookBarEvent.PublishCalled); Assert.IsNull(outlookBarEvent.PublishArgumentPayload); }
public void IfOutlookBarMetadataIsSetSelectingViewInOutlookBarControlPublishOutlookBarEventWithCorrectPayload() { var control = new OutlookBarControl(); DependencyObject model = new DependencyObject(); MockEventAggregator eventAggregator = new MockEventAggregator(); MockOutlookBarEvent outlookBarEvent = new MockOutlookBarEvent(); eventAggregator.AddMapping<OutlookBarEvent>(outlookBarEvent); IRegionAdapter adapter = new OutlookBarControlRegionAdapter(eventAggregator); var region = adapter.Initialize(control); OutlookBarControl.SetOutlookBarMetadata(model, new OutlookBarMetadata { Payload = "MyPayload" }); region.Add(model); Assert.IsFalse(outlookBarEvent.PublishCalled); Assert.IsNull(outlookBarEvent.PublishArgumentPayload); control.SelectedItem = model; Assert.IsTrue(outlookBarEvent.PublishCalled); Assert.IsNotNull(outlookBarEvent.PublishArgumentPayload); Assert.AreEqual("MyPayload", outlookBarEvent.PublishArgumentPayload); }