summaryrefslogtreecommitdiffstats
path: root/browser/components/places/tests/chrome/test_selectItems_on_nested_tree.xhtml
diff options
context:
space:
mode:
Diffstat (limited to 'browser/components/places/tests/chrome/test_selectItems_on_nested_tree.xhtml')
-rw-r--r--browser/components/places/tests/chrome/test_selectItems_on_nested_tree.xhtml85
1 files changed, 85 insertions, 0 deletions
diff --git a/browser/components/places/tests/chrome/test_selectItems_on_nested_tree.xhtml b/browser/components/places/tests/chrome/test_selectItems_on_nested_tree.xhtml
new file mode 100644
index 0000000000..6dc2d33041
--- /dev/null
+++ b/browser/components/places/tests/chrome/test_selectItems_on_nested_tree.xhtml
@@ -0,0 +1,85 @@
+<?xml version="1.0"?>
+
+<!--
+ Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/licenses/publicdomain/
+ -->
+
+<?xml-stylesheet href="chrome://global/skin" type="text/css"?>
+<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css"
+ type="text/css"?>
+
+<?xml-stylesheet href="chrome://browser/content/places/places.css"?>
+<?xml-stylesheet href="chrome://browser/skin/places/tree-icons.css"?>
+
+<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
+ title="549192: History view not updated after deleting entry"
+ onload="runTest();">
+
+ <script type="application/javascript"
+ src="chrome://browser/content/places/places-tree.js"/>
+ <script src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js" />
+ <script type="application/javascript" src="head.js" />
+
+ <body xmlns="http://www.w3.org/1999/xhtml" />
+
+ <tree id="tree"
+ is="places-tree"
+ flex="1">
+ <treecols>
+ <treecol label="Title" id="title" anonid="title" primary="true" style="order: 1;" flex="1"/>
+ </treecols>
+ <treechildren flex="1"/>
+ </tree>
+
+ <script type="application/javascript"><![CDATA[
+ /**
+ * Ensure that selectItems doesn't recurse infinitely in nested trees.
+ */
+
+ function runTest() {
+ SimpleTest.waitForExplicitFinish();
+
+ (async function() {
+ await PlacesUtils.bookmarks.insert({
+ parentGuid: PlacesUtils.bookmarks.unfiledGuid,
+ index: PlacesUtils.bookmarks.DEFAULT_INDEX,
+ type: PlacesUtils.bookmarks.TYPE_BOOKMARK,
+ url: `place:parent=${PlacesUtils.bookmarks.unfiledGuid}`,
+ title: "shortcut"
+ });
+
+ await PlacesUtils.bookmarks.insert({
+ parentGuid: PlacesUtils.bookmarks.unfiledGuid,
+ index: PlacesUtils.bookmarks.DEFAULT_INDEX,
+ type: PlacesUtils.bookmarks.TYPE_BOOKMARK,
+ url: `place:parent=${PlacesUtils.bookmarks.unfiledGuid}&maxResults=10`,
+ title: "query"
+ });
+
+ let folder = await PlacesUtils.bookmarks.insert({
+ parentGuid: PlacesUtils.bookmarks.unfiledGuid,
+ index: PlacesUtils.bookmarks.DEFAULT_INDEX,
+ type: PlacesUtils.bookmarks.TYPE_FOLDER,
+ title: "folder"
+ });
+
+ let bm = await PlacesUtils.bookmarks.insert({
+ parentGuid: folder.guid,
+ index: PlacesUtils.bookmarks.DEFAULT_INDEX,
+ type: PlacesUtils.bookmarks.TYPE_BOOKMARK,
+ url: "http://www.mozilla.org/",
+ title: "bookmark"
+ });
+
+ // Setup the places tree contents.
+ let tree = document.getElementById("tree");
+ tree.place = `place:parent=${PlacesUtils.bookmarks.unfiledGuid}`;
+
+ // Select the last bookmark.
+ tree.selectItems([bm.guid]);
+ is (tree.selectedNode.bookmarkGuid, bm.guid, "The right node was selected");
+ })().then(SimpleTest.finish);
+ }
+ ]]></script>
+</window>