summaryrefslogtreecommitdiffstats
path: root/third_party/WebKit/LayoutTests/fast/innerHTML/innerHTML-svg-write.html
blob: ff1b0b712c47df392c138e4c7b2e54ba457893a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<html>
<head>
<script src="../js/resources/js-test-pre.js"></script>
</head>
<body>
<div style="visibility:hidden">
  <svg></svg>
</div>
<script>
  description("Test that setting innerHTML and outerHTML properties works on SVG elements");
  var svg = document.getElementsByTagName('svg')[0];

  svg.innerHTML = "<rect/>";
  shouldBeEqualToString("svg.innerHTML", '<rect></rect>');
  shouldBeEqualToString("svg.firstChild.namespaceURI", 'http://www.w3.org/2000/svg');

  svg.innerHTML = "<foreignobject><svg/></foreignobject>";
  shouldBeEqualToString("svg.innerHTML", '<foreignObject><svg></svg></foreignObject>');
  shouldBeEqualToString("svg.firstChild.namespaceURI", 'http://www.w3.org/2000/svg');
  shouldBeEqualToString("svg.firstChild.firstChild.namespaceURI", 'http://www.w3.org/2000/svg');

  svg.innerHTML = "<foreignobject><p>x</foreignobject>";
  shouldBeEqualToString("svg.innerHTML", '<foreignObject><p>x</p></foreignObject>');
  shouldBeEqualToString("svg.firstChild.namespaceURI", 'http://www.w3.org/2000/svg');
  shouldBeEqualToString("svg.firstChild.firstChild.namespaceURI", 'http://www.w3.org/1999/xhtml');

  svg.outerHTML = "<svg><circle/></svg>";
  var svg = document.getElementsByTagName('svg')[0];
  shouldBeEqualToString("svg.innerHTML", '<circle></circle>');
  shouldBeEqualToString("svg.firstChild.namespaceURI", 'http://www.w3.org/2000/svg');
</script>
</body>
</html>