Bug 470455 - test_database_sync_embed_visits.js leaks, r=sdwilsh
[wine-gecko.git] / content / base / test / test_bug372086.html
blob31ec3d6157d215fadb66d402f3dc422f9696f344
1 <!DOCTYPE HTML>
2 <html>
3 <!--
4 https://bugzilla.mozilla.org/show_bug.cgi?id=372086
5 -->
6 <head>
7 <title>Test for Bug 372086</title>
8 <script type="text/javascript" src="/MochiKit/MochiKit.js"></script>
9 <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
10 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
11 </head>
12 <body>
13 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=372086">Mozilla Bug 372086</a>
14 <p id="display">
15 <!-- Binding is:
16 <bindings xmlns="http://www.mozilla.org/xbl">
17 <binding id="test">
18 <content>ghi<children/>jkl</content>
19 </binding>
20 </bindings>
21 -->
22 <div id="d" style="-moz-binding: url(data:application/xml,%3Cbindings%20xmlns%3D%22http%3A%2F%2Fwww.mozilla.org%2Fxbl%22%3E%3Cbinding%20id%3D%22test%22%3E%3Ccontent%3Eghi%3Cchildren%2F%3Ejkl%3C%2Fcontent%3E%3C%2Fbinding%3E%3C%2Fbindings%3E)">abc</div>def
23 </p>
24 <div id="content" style="display: none">
26 </div>
27 <pre id="test">
28 <script class="testbody" type="text/javascript">
30 /** Test for Bug 372086 **/
32 function runTest() {
33 var range = document.createRange();
35 var c = $("d").firstChild;
36 var a = $("d").nextSibling;
38 range.setStart(c, 1);
39 range.setEnd(c, 3);
40 is(range.startContainer, c, "Unexpected start container");
41 is(range.startOffset, 1, "Unexpected start offset");
42 is(range.endContainer, c, "Unexpected end container");
43 is(range.endOffset, 3, "Unexpected end offset");
44 is(range.toString(), "bc", "Unexpected range serialization");
46 var anon = document.getAnonymousNodes($("d"))[0];
47 // Should collapse the range, because can't determine order
48 range.setEnd(anon, 2);
49 is(range.startContainer, anon, "Unexpected collapsed start container");
50 is(range.startOffset, 2, "Unexpected collapsed start offset");
51 is(range.endContainer, anon, "Unexpected collapsed end container");
52 is(range.endOffset, 2, "Unexpected collapsed end offset");
53 is(range.toString(), "", "Unexpected collapsed range serialization");
55 range.setEnd(a, 2);
56 range.setStart(a, 0);
57 is(range.startContainer, a, "Unexpected start container after");
58 is(range.startOffset, 0, "Unexpected start offset after");
59 is(range.endContainer, a, "Unexpected end container after");
60 is(range.endOffset, 2, "Unexpected end offset after");
61 is(range.toString(), "de", "Unexpected range serialization after");
63 anon = document.getAnonymousNodes($("d"))[2];
64 // Collapses because one endpoint is anonymous from point of view of
65 // the other.
66 range.setStart(anon, 1);
67 is(range.startContainer, anon, "Unexpected newly collapsed start container");
68 is(range.startOffset, 1, "Unexpected newly collapsed start offset");
69 is(range.endContainer, anon, "Unexpected newly collapsed end container");
70 is(range.endOffset, 1, "Unexpected newly collapsed end offset");
71 is(range.toString(), "", "Unexpected collapsed range serialization");
73 range.setEnd(anon, 3);
74 is(range.startContainer, anon, "Unexpected anon start container");
75 is(range.startOffset, 1, "Unexpected anon start offset");
76 is(range.endContainer, anon, "Unexpected anon end container");
77 is(range.endOffset, 3, "Unexpected anon end offset");
78 is(range.toString(), "kl", "Unexpected anon range serialization");
81 SimpleTest.waitForExplicitFinish();
82 addLoadEvent(runTest);
83 addLoadEvent(SimpleTest.finish)
84 </script>
85 </pre>
86 </body>
87 </html>