public void RegisterViewThatGetsLoaded() { // ARRANGE var view = new Mock <FrameworkElementMock>(); view .Setup(mock => mock.IsAlive) .Returns(true); // At time of register the view has no parent, thus is not loaded DialogServiceViews.Register(view.Object); // After register we can simulate that the view gets loaded view .Setup(mock => mock.GetOwner()) .Returns(new Window()); var expected = new[] { view.Object }; // ACT view.Raise(mock => mock.Loaded += null, new RoutedEventArgs(null, view.Object)); // ASSERT Assert.That(DialogServiceViews.Views, Is.EqualTo(expected)); }
public void RegisterViewThatNeverGetsLoaded() { // ARRANGE var view = new Mock <FrameworkElementMock>(); view .Setup(mock => mock.IsAlive) .Returns(true); // ACT DialogServiceViews.Register(view.Object); // ASSERT Assert.That(DialogServiceViews.Views, Is.Empty); }
public void UnregisterLoadedView() { // ARRANGE var view = new Mock <FrameworkElementMock>(); view .Setup(mock => mock.IsAlive) .Returns(true); view .Setup(mock => mock.GetOwner()) .Returns(new Window()); DialogServiceViews.SetIsRegistered(view.Object, true); // ACT DialogServiceViews.SetIsRegistered(view.Object, false); // ASSERT Assert.That(DialogServiceViews.Views, Is.Empty); }
public void UnregisterWhenClosingOwner() { // ARRANGE var window = new Window(); var view = new Mock <FrameworkElementMock>(); view .Setup(mock => mock.IsAlive) .Returns(true); view .Setup(mock => mock.GetOwner()) .Returns(window); DialogServiceViews.Register(view.Object); // ACT window.Close(); // ASSERT Assert.That(DialogServiceViews.Views, Is.Empty); }
public void RegisterLoadedView() { // ARRANGE var view = new Mock <FrameworkElementMock>(); view .Setup(mock => mock.IsAlive) .Returns(true); view .Setup(mock => mock.GetOwner()) .Returns(new Window()); var expected = new[] { view.Object }; // ACT DialogServiceViews.Register(view.Object); // ASSERT Assert.That(DialogServiceViews.Views, Is.EqualTo(expected)); }
public void TearDown() { DialogServiceViews.Clear(); }