summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/dom/nodes/Text-splitText.html
blob: 2dd23018cb4c7445cda7e84695e883fa65b557fb (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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<!doctype html>
<meta charset=utf-8>
<title>Text.splitText()</title>
<link rel=help href="https://dom.spec.whatwg.org/#dom-text-splittextoffset">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<script>
test(function() {
  var text = document.createTextNode("camembert");
  assert_throws_dom("INDEX_SIZE_ERR", function () { text.splitText(10) });
}, "Split text after end of data");

test(function() {
  var text = document.createTextNode("");
  var new_text = text.splitText(0);
  assert_equals(text.data, "");
  assert_equals(new_text.data, "");
}, "Split empty text");

test(function() {
  var text = document.createTextNode("comté");
  var new_text = text.splitText(0);
  assert_equals(text.data, "");
  assert_equals(new_text.data, "comté");
}, "Split text at beginning");

test(function() {
  var text = document.createTextNode("comté");
  var new_text = text.splitText(5);
  assert_equals(text.data, "comté");
  assert_equals(new_text.data, "");
}, "Split text at end");

test(function() {
  var text = document.createTextNode("comté");
  var new_text = text.splitText(3);
  assert_equals(text.data, "com");
  assert_equals(new_text.data, "té");
  assert_equals(new_text.parentNode, null);
}, "Split root");

test(function() {
  var parent = document.createElement('div');
  var text = document.createTextNode("bleu");
  parent.appendChild(text);
  var new_text = text.splitText(2);
  assert_equals(text.data, "bl");
  assert_equals(new_text.data, "eu");
  assert_equals(text.nextSibling, new_text);
  assert_equals(new_text.parentNode, parent);
}, "Split child");
</script>