public void SameBrowser_ReplacesPending()
{
var isolator = new NavigationIsolator();
var browser = new BrowserStub();
string target = "http://whatever";
isolator.Navigate(browser, target);
var browser2 = new BrowserStub();
string target2A = "http://first";
isolator.Navigate(browser2, target2A);
string target2B = "http://second";
isolator.Navigate(browser2, target2B);
// Signal the first browser to finish.
browser.NormalTermination();
Assert.That(() => browser2.NavigateTarget, Is.EqualTo(target2B), "Second navigation should have proceeded with its second choice");
// Signal the second browser to finish.
browser2.NormalTermination();
Assert.That(browser.EventHandlerCount, Is.EqualTo(0), "event handlers should be removed once last navigation completed");
Assert.That(browser2.EventHandlerCount, Is.EqualTo(0), "event handlers should be removed once last navigation completed");
}