OLD | NEW |
| (Empty) |
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> | |
2 <html> | |
3 <head> | |
4 <script src="../../resources/js-test.js"></script> | |
5 </head> | |
6 <body> | |
7 <script> | |
8 description('Test the behavior of multiple base elements.'); | |
9 | |
10 var originalBase = document.URL.replace(/[^/]*$/, ""); | |
11 | |
12 function clean(url) | |
13 { | |
14 if (url.length < originalBase.length) | |
15 return url; | |
16 if (url.substring(0, originalBase.length) !== originalBase) | |
17 return url; | |
18 return "http://originalbase.com/" + url.substring(originalBase.length); | |
19 } | |
20 | |
21 var anchor = document.createElement('a'); | |
22 anchor.href = "file"; | |
23 | |
24 document.body.appendChild(anchor); | |
25 | |
26 shouldBe("clean(anchor.href)", "'http://originalbase.com/file'"); | |
27 | |
28 var base = document.createElement('base'); | |
29 base.href = "http://domain.com/base/"; | |
30 | |
31 shouldBe("document.head.appendChild(base), clean(anchor.href)", "'http://domain.
com/base/file'"); | |
32 shouldBe("base.href = 'http://domain.com/base-changed/', clean(anchor.href)", "'
http://domain.com/base-changed/file'"); | |
33 shouldBe("document.head.removeChild(base), clean(anchor.href)", "'http://origina
lbase.com/file'"); | |
34 | |
35 base.href = "http://domain.com/base/"; | |
36 | |
37 var base2 = document.createElement('base'); | |
38 base2.href = "http://domain.com/base2/"; | |
39 | |
40 var base3 = document.createElement('base'); | |
41 base3.href = "http://domain.com/base3/"; | |
42 | |
43 shouldBe("document.head.appendChild(base), document.head.appendChild(base2), cle
an(anchor.href)", "'http://domain.com/base/file'"); | |
44 shouldBe("base.removeAttribute('href'), clean(anchor.href)", "'http://domain.com
/base2/file'"); | |
45 shouldBe("document.head.appendChild(base3), clean(anchor.href)", "'http://domain
.com/base2/file'"); | |
46 | |
47 document.head.removeChild(base); | |
48 document.head.removeChild(base2); | |
49 document.head.removeChild(base3); | |
50 </script> | |
51 </body> | |
52 </html> | |
OLD | NEW |