Commit Servo loaded URLs to tabs
This commit is contained in:
@@ -40,6 +40,34 @@ fn new_navigation_clears_forward_stack() -> Result<(), Box<dyn Error>> {
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn observed_loaded_url_replaces_active_url_without_back_stack() -> Result<(), Box<dyn Error>> {
|
||||
let mut core = BrowserCore::new(InitialBrowserConfig::ely_defaults()?)?;
|
||||
let tab_id = core.active_tab()?.id().clone();
|
||||
|
||||
assert!(core.replace_tab_loaded_url(&tab_id, UrlText::parse("https://example.com/")?)?);
|
||||
|
||||
assert_eq!(core.active_tab()?.url().as_str(), "https://example.com/");
|
||||
assert!(!core.active_tab()?.can_navigate_back());
|
||||
assert!(!core.active_tab()?.can_navigate_forward());
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn user_loaded_url_enters_active_back_stack() -> Result<(), Box<dyn Error>> {
|
||||
let mut core = BrowserCore::new(InitialBrowserConfig::ely_defaults()?)?;
|
||||
core.navigate_active_tab(UrlText::parse("https://example.com/a")?)?;
|
||||
let tab_id = core.active_tab()?.id().clone();
|
||||
|
||||
assert!(core.navigate_tab_to_loaded_url(&tab_id, UrlText::parse("https://example.com/b")?)?);
|
||||
|
||||
assert_eq!(core.active_tab()?.url().as_str(), "https://example.com/b");
|
||||
assert!(core.active_tab()?.can_navigate_back());
|
||||
assert!(core.navigate_active_tab_back()?);
|
||||
assert_eq!(core.active_tab()?.url().as_str(), "https://example.com/a");
|
||||
Ok(())
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn empty_history_navigation_keeps_active_url() -> Result<(), Box<dyn Error>> {
|
||||
let mut core = BrowserCore::new(InitialBrowserConfig::ely_defaults()?)?;
|
||||
|
||||
Reference in New Issue
Block a user