public void RemovingOnlyItemWorks() { var target = new NavigationViewModel(); var first = CreatePage(); target.NavigateTo(first); target.RemoveAll(first); Assert.Null(target.Content); Assert.Empty(target.History); Assert.Equal(-1, target.Index); }
public void RemovingItemDisposesRegisteredResources() { var target = new NavigationViewModel(); var first = CreatePage(); var disposed = false; target.NavigateTo(first); target.RegisterDispose(first, Disposable.Create(() => disposed = true)); target.RemoveAll(first); Assert.True(disposed); }
public void RemovingItemCallsDispose() { var target = new NavigationViewModel(); var first = CreatePage(); var disposed = false; first.When(x => x.Dispose()).Do(_ => disposed = true); target.NavigateTo(first); target.RemoveAll(first); Assert.True(disposed); }
public void CallsDeactivatedAndThenDisposedOnPages() { var target = new NavigationViewModel(); var first = CreatePage(); target.NavigateTo(first); target.RemoveAll(first); Received.InOrder(() => { first.Deactivated(); first.Dispose(); }); }
public void RemovesAllInstancesOfPage() { var target = new NavigationViewModel(); var first = CreatePage(); var second = CreatePage(); target.NavigateTo(first); target.NavigateTo(second); target.NavigateTo(second); target.NavigateTo(second); target.RemoveAll(second); Assert.Single(target.History); }
public void RemovingCurrentItemSetsContentToPrevious() { var target = new NavigationViewModel(); var first = CreatePage(); var second = CreatePage(); target.NavigateTo(first); target.NavigateTo(second); target.RemoveAll(second); Assert.Same(first, target.Content); Assert.Same(first, target.History[0]); Assert.Equal(0, target.Index); Assert.Single(target.History); }
public void RemovingItemAfterCurrentWorks() { var target = new NavigationViewModel(); var first = CreatePage(); var second = CreatePage(); target.NavigateTo(first); target.NavigateTo(second); target.Back(); target.RemoveAll(second); Assert.That(first, Is.SameAs(target.Content)); Assert.That(first, Is.SameAs(target.History[0])); Assert.That(0, Is.EqualTo(target.Index)); //Assert.Single(target.History); }