gecko-dev/docshell/test/browser/browser_bug655273.js
Nicholas Nethercote 13643f64e8 Bug 1488321 - Fix up nsISHEntry.{index,getEntryAtIndex()}. r=nika
nsISHEntry.index is readonly, but if you pass `true` as getEntryAtIndex()'s
second argument, nsISHEntry.index will be modified. This is pretty gross.

This patch changes `index` so it's not readonly (because it's not!) and removes
getEntryAtIndex()'s second argument.

--HG--
extra : rebase_source : c519d77fcc1c3bda2f260b5888ce9cd0f6cfdab5
2018-09-05 09:02:37 +10:00

30 lines
1.1 KiB
JavaScript

/* 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 for Bug 655273. Make sure that after changing the URI via
* history.pushState, the resulting SHEntry has the same title as our old
* SHEntry.
**/
add_task(async function test() {
waitForExplicitFinish();
await BrowserTestUtils.withNewTab({ gBrowser, url: "http://example.com" },
async function(browser) {
await ContentTask.spawn(browser, null, async function() {
let cw = content;
let oldTitle = cw.document.title;
ok(oldTitle, 'Content window should initially have a title.');
cw.history.pushState('', '', 'new_page');
let shistory = cw.docShell
.QueryInterface(Ci.nsIWebNavigation)
.sessionHistory;
is(shistory.legacySHistory.getEntryAtIndex(shistory.index).title,
oldTitle, 'SHEntry title after pushstate.');
});
});
});