|
1 /* This Source Code Form is subject to the terms of the Mozilla Public |
|
2 * License, v. 2.0. If a copy of the MPL was not distributed with this |
|
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
|
4 |
|
5 /** |
|
6 * Test for Bug 655273. Make sure that after changing the URI via |
|
7 * history.pushState, the resulting SHEntry has the same title as our old |
|
8 * SHEntry. |
|
9 **/ |
|
10 |
|
11 function test() { |
|
12 waitForExplicitFinish(); |
|
13 |
|
14 let tab = gBrowser.addTab('http://example.com'); |
|
15 let tabBrowser = tab.linkedBrowser; |
|
16 |
|
17 tabBrowser.addEventListener('load', function(aEvent) { |
|
18 tabBrowser.removeEventListener('load', arguments.callee, true); |
|
19 |
|
20 let cw = tabBrowser.contentWindow; |
|
21 let oldTitle = cw.document.title; |
|
22 ok(oldTitle, 'Content window should initially have a title.'); |
|
23 cw.history.pushState('', '', 'new_page'); |
|
24 |
|
25 let shistory = cw.QueryInterface(Ci.nsIInterfaceRequestor) |
|
26 .getInterface(Ci.nsIWebNavigation) |
|
27 .sessionHistory; |
|
28 |
|
29 is(shistory.getEntryAtIndex(shistory.index, false).title, |
|
30 oldTitle, 'SHEntry title after pushstate.'); |
|
31 |
|
32 gBrowser.removeTab(tab); |
|
33 finish(); |
|
34 }, true); |
|
35 } |