/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ // Test the behavior of the tab and the urlbar when opening normal web page by // clicking link that the target is "other". /* import-globals-from common_link_in_tab_title_and_url_prefilled.js */ Services.scriptloader.loadSubScript( "chrome://mochitests/content/browser/browser/base/content/test/tabs/common_link_in_tab_title_and_url_prefilled.js", this ); add_task(async function normal_page__other_target__foreground() { await doTestInSameWindow({ link: "wait-a-bit--other-target", openBy: OPEN_BY.CLICK, openAs: OPEN_AS.FOREGROUND, loadingState: { tab: BLANK_TITLE, urlbar: BLANK_URL, }, async actionWhileLoading(onTabLoaded) { info("Wait until loading the link target"); await onTabLoaded; }, finalState: { tab: WAIT_A_BIT_PAGE_TITLE, urlbar: WAIT_A_BIT_URL, history: [WAIT_A_BIT_URL], }, }); }); add_task(async function normal_page__other_target__foreground__abort() { await doTestInSameWindow({ link: "wait-a-bit--other-target", openBy: OPEN_BY.CLICK, openAs: OPEN_AS.FOREGROUND, loadingState: { tab: BLANK_TITLE, urlbar: BLANK_URL, }, async actionWhileLoading(onTabLoaded) { info("Abort loading"); document.getElementById("stop-button").click(); }, finalState: { tab: BLANK_TITLE, urlbar: BLANK_URL, history: [], }, }); }); add_task(async function normal_page__other_target__foreground__timeout() { await doTestInSameWindow({ link: "request-timeout--other-target", openBy: OPEN_BY.CLICK, openAs: OPEN_AS.FOREGROUND, loadingState: { tab: BLANK_TITLE, urlbar: BLANK_URL, }, async actionWhileLoading(onTabLoaded) { info("Wait until loading the link target"); await onTabLoaded; }, finalState: { tab: REQUEST_TIMEOUT_LOADING_TITLE, urlbar: REQUEST_TIMEOUT_URL, history: [REQUEST_TIMEOUT_URL], }, }); }); add_task(async function normal_page__foreground__session_restore() { await doSessionRestoreTest({ link: "wait-a-bit--other-target", openBy: OPEN_BY.CLICK, openAs: OPEN_AS.FOREGROUND, expectedSessionRestored: false, }); }); add_task(async function normal_page__other_target__background() { await doTestInSameWindow({ link: "wait-a-bit--other-target", openBy: OPEN_BY.CLICK, openAs: OPEN_AS.BACKGROUND, loadingState: { tab: WAIT_A_BIT_LOADING_TITLE, urlbar: HOME_URL, }, async actionWhileLoading(onTabLoaded) { info("Wait until loading the link target"); await onTabLoaded; }, finalState: { tab: WAIT_A_BIT_PAGE_TITLE, urlbar: HOME_URL, history: [WAIT_A_BIT_URL], }, }); }); add_task(async function normal_page__other_target__background__abort() { await doTestInSameWindow({ link: "wait-a-bit--other-target", openBy: OPEN_BY.CLICK, openAs: OPEN_AS.BACKGROUND, loadingState: { tab: WAIT_A_BIT_LOADING_TITLE, urlbar: HOME_URL, }, async actionWhileLoading(onTabLoaded) { info("Abort loading"); document.getElementById("stop-button").click(); }, finalState: { tab: WAIT_A_BIT_LOADING_TITLE, urlbar: HOME_URL, history: [], }, }); }); add_task(async function normal_page__other_target__background__timeout() { await doTestInSameWindow({ link: "request-timeout--other-target", openBy: OPEN_BY.CLICK, openAs: OPEN_AS.BACKGROUND, loadingState: { tab: REQUEST_TIMEOUT_LOADING_TITLE, urlbar: HOME_URL, }, async actionWhileLoading(onTabLoaded) { info("Wait until loading the link target"); await onTabLoaded; }, finalState: { tab: REQUEST_TIMEOUT_LOADING_TITLE, urlbar: HOME_URL, history: [REQUEST_TIMEOUT_URL], }, }); }); add_task(async function normal_page__foreground__session_restore() { await doSessionRestoreTest({ link: "wait-a-bit--other-target", openBy: OPEN_BY.CLICK, openAs: OPEN_AS.BACKGROUND, expectedSessionRestored: false, }); });