LibWeb+WebContent: Do not include DOM HTML in text test expectations

For example, in the following abbreviated test HTML:

    <span>some text</span>
    <script>println("whf")</script>

We would have to craft the expectation file to include the "some text"
segment, usually with some leading whitespace. This is a bit annoying,
and makes it difficult to manually craft expectation files.

So instead of comparing the expectation against the entire DOM inner
text, we now send the inner text of just the <pre> element containing
the test output when we invoke `internals.signalTextTestIsDone`.
This commit is contained in:
Timothy Flynn 2024-10-02 12:38:10 -04:00 committed by Tim Flynn
commit bf668696de
Notes: github-actions[bot] 2024-10-03 11:08:22 +00:00
319 changed files with 333 additions and 333 deletions

View file

@ -1 +1 @@
PASS (didn't crash) PASS (didn't crash)

View file

@ -1 +1 @@
Cloned CDATASection node data: PASS Cloned CDATASection node data: PASS

View file

@ -1,4 +1,4 @@
<DIV id="one" > <DIV id="one" >
<DIV id="two" > <DIV id="two" >
<DIV id="two" > <DIV id="two" >
<DIV id="one" > <DIV id="one" >

View file

@ -1,4 +1,4 @@
<DIV id="one" > <DIV id="one" >
<DIV id="two" > <DIV id="two" >
<DIV id="two" > <DIV id="two" >
<DIV id="one" > <DIV id="one" >

View file

@ -1,4 +1,4 @@
[object HTMLDocument] [object HTMLDocument]
true true
[object HTMLDocument] [object HTMLDocument]
true true

View file

@ -1,4 +1,4 @@
Submit <FORM > <FORM >
document.bob === document.forms[0]: true document.bob === document.forms[0]: true
<BUTTON id="fred" > <BUTTON id="fred" >
img element with name 'foo' and id 'bar': img element with name 'foo' and id 'bar':

View file

@ -1,4 +1,4 @@
element.classList initial value: "" element.classList initial value: ""
element.classList after setting classList to "a": "a" element.classList after setting classList to "a": "a"
element.classList after setting className to "": "" element.classList after setting className to "": ""
element.classList after setting to className to "a a b c": "a a b c" element.classList after setting to className to "a a b c": "a a b c"

View file

@ -1 +1 @@
<DIV id="target" > <DIV id="target" >

View file

@ -1 +1 @@
hello <DIV id="c" > <DIV id="c" >

View file

@ -1,4 +1,4 @@
Negative coordinates return null: true Negative coordinates return null: true
Coordinates outside the viewport return null: true Coordinates outside the viewport return null: true
<HTML id="root-element" > <HTML id="root-element" >
<DIV id="large-box" > <DIV id="large-box" >

View file

@ -1,4 +1,4 @@
xlink:ref getAttribute = 'null' xlink:ref getAttribute = 'null'
xlink:ref getAttributeNS = 'test' xlink:ref getAttributeNS = 'test'
href getAttribute = 'test' href getAttribute = 'test'
href getAttributeNS = 'null' href getAttributeNS = 'null'

View file

@ -1,4 +1,4 @@
xlink:href getAttributeNode = 'null' xlink:href getAttributeNode = 'null'
xlink:href getAttributeNodeNS = 'Attr': name = xlink:href value = test xlink:href getAttributeNodeNS = 'Attr': name = xlink:href value = test
href getAttributeNode = 'Attr': name = href value = test href getAttributeNode = 'Attr': name = href value = test
href getAttributeNodeNS = 'null' href getAttributeNodeNS = 'null'

View file

@ -1,4 +1,4 @@
Original values Original values
xlink:href getAttributeNS = 'test' xlink:href getAttributeNS = 'test'
href getAttribute = 'test' href getAttribute = 'test'
Non-matching namespace Non-matching namespace

View file

@ -1,2 +1,2 @@
Item 1Item 2Item 3Item 4Item 5Item 6Item 7Item 8Item 9Item 10Item 11Item 12 scrollWidth: 1430 scrollWidth: 1430
scrollLeft: 1130 scrollLeft: 1130

View file

@ -1,4 +1,4 @@
hello <DIV id="c" > <DIV id="c" >
<DIV id="b" > <DIV id="b" >
<DIV id="a" > <DIV id="a" >
<HTML > <HTML >

View file

@ -1 +1 @@
Some text Elements at point 30, 20: p < div < body < html p < div < body < html

View file

@ -1,4 +1,4 @@
Negative coordinates return empty array: true Negative coordinates return empty array: true
Coordinates outside the viewport return empty array: true Coordinates outside the viewport return empty array: true
== Elements at (500, 10) == == Elements at (500, 10) ==
<DIV id="large-box" > <DIV id="large-box" >

View file

@ -1 +1 @@
12389 PASS (didn't crash) PASS (didn't crash)

View file

@ -1,5 +1,4 @@
Well hello friends some text-input selectionStart: 0 selectionEnd: 0 selectionDirection: none
text text-input selectionStart: 0 selectionEnd: 0 selectionDirection: none
date-input selectionStart: null selectionEnd: null selectionDirection: null date-input selectionStart: null selectionEnd: null selectionDirection: null
textarea selectionStart: 0 selectionEnd: 0 selectionDirection: none textarea selectionStart: 0 selectionEnd: 0 selectionDirection: none
text-input selectionStart: 18 selectionEnd: 18 selectionDirection: none text-input selectionStart: 18 selectionEnd: 18 selectionDirection: none

View file

@ -1,4 +1,4 @@
Calling setRangeText() on an element where setRangeText doesn't apply throws: InvalidStateError Calling setRangeText() on an element where setRangeText doesn't apply throws: InvalidStateError
setRangeText("foo") on: textarea - Value: foo setRangeText("foo") on: textarea - Value: foo
setRangeText("foo", 1, 3) on: textarea - Value: tfoot setRangeText("foo", 1, 3) on: textarea - Value: tfoot
setRangeText("foo") on: password - Value: footest setRangeText("foo") on: password - Value: footest

View file

@ -1,2 +1,2 @@
Empty string in collection: false Empty string in collection: false
'haxx' in collection: true 'haxx' in collection: true

View file

@ -1,4 +1,4 @@
HTMLCollection HTMLCollection
anchor1 anchor1
anchor2 anchor2
anchor3 anchor3

View file

@ -8,4 +8,4 @@ element.isEqualNode(elementWithDifferentLocalName): false
element.isEqualNode(elementWithAttribute): false element.isEqualNode(elementWithAttribute): false
element.isEqualNode(elementWithAttribute) (after adding non-matching attribute): false element.isEqualNode(elementWithAttribute) (after adding non-matching attribute): false
element.isEqualNode(elementWithAttribute) (after adding matching attribute): false element.isEqualNode(elementWithAttribute) (after adding matching attribute): false
element.isEqualNode(elementWithAttribute) (after removing non-matching attribute): true element.isEqualNode(elementWithAttribute) (after removing non-matching attribute): true

View file

@ -17,4 +17,4 @@ After setting element attribute xmlns:bar='exampleNamespaceURI'
element.lookupNamespaceURI(null): null element.lookupNamespaceURI(null): null
element.lookupNamespaceURI(""): null element.lookupNamespaceURI(""): null
element.lookupNamespaceURI("foo"): null element.lookupNamespaceURI("foo"): null
element.lookupNamespaceURI("bar"): exampleNamespaceURI element.lookupNamespaceURI("bar"): exampleNamespaceURI

View file

@ -6,4 +6,4 @@ Prefix for absent namespace "no" on document: null
Prefix for namespace "def" on child: abc Prefix for namespace "def" on child: abc
Prefix null on child: null Prefix null on child: null
Prefix for namespace "test" (in parent) on child: ex Prefix for namespace "test" (in parent) on child: ex
Prefix for namespace "def" (from attribute "x") on child: abc Prefix for namespace "def" (from attribute "x") on child: abc

View file

@ -5,4 +5,4 @@ Document fragment text after documentFragment.normalize(): 1234, child nodes: 2
Text node 1 data: 12 Text node 1 data: 12
Text node 2 data: 2 Text node 2 data: 2
Text node 3 data: 34 Text node 3 data: 34
Text node 4 data: 4 Text node 4 data: 4

View file

@ -1,2 +1,2 @@
Top: 16 Top: 16
Left: 8 Left: 8

View file

@ -1,2 +1 @@
Hello💨😮 World
llo💨😮 Wo llo💨😮 Wo

View file

@ -3,4 +3,4 @@ Text node B with previous sibling A: AB
Text node B with previous sibling A and next sibling C: ABC Text node B with previous sibling A and next sibling C: ABC
CDATA section D with no siblings: D CDATA section D with no siblings: D
CDATA section E with previous sibling D: DE CDATA section E with previous sibling D: DE
CDATA section E with previous sibling D and next sibling F: DEF CDATA section E with previous sibling D and next sibling F: DEF

View file

@ -1 +1 @@
Item 1Item 2Item 3Item 4Item 5Item 6Item 7Item 8Item 9Item 10Item 11Item 12 1200 1200

View file

@ -1 +1 @@
Item 1Item 2Item 3Item 4Item 5Item 6Item 7Item 8Item 9Item 10Item 11Item 12 1200 1200

View file

@ -1 +1 @@
document.getElementById(""): null document.getElementById(""): null

View file

@ -1 +1 @@
getElementById('foo') => 1 getElementById('foo') => 1

View file

@ -1 +1 @@
document.getElementsByClassName("").length: 0 document.getElementsByClassName("").length: 0

View file

@ -1,4 +1,4 @@
document.getElementsByClassName("te st").length: 3 document.getElementsByClassName("te st").length: 3
<DIV id="1" > <DIV id="1" >
<DIV id="2" > <DIV id="2" >
<DIV id="3" > <DIV id="3" >

View file

@ -1 +1 @@
document.getElementsByName("").length: 0 document.getElementsByName("").length: 0

View file

@ -1,2 +1,2 @@
Hello Ladybird Ladybird again World 6 6
4 4

View file

@ -1,2 +1,2 @@
x [object DOMRectList] [object DOMRectList]
[object DOMRect] [object DOMRect]

View file

@ -1,4 +1,4 @@
1 1
<H2 > <H2 >
2 2
<H2 > <H2 >

View file

@ -1,4 +1,4 @@
Hello, world!I'm totally bold rn execCommand("bold") returned false execCommand("bold") returned false
Hello, world!<b>I'm totally bold rn</b> Hello, world!<b>I'm totally bold rn</b>
queryCommandEnabled("bold") returned false queryCommandEnabled("bold") returned false
queryCommandIndeterm("bold") returned false queryCommandIndeterm("bold") returned false

View file

@ -1 +1 @@
PASS (didn't crash) PASS (didn't crash)

View file

@ -1,2 +1,2 @@
PASS (''): InvalidCharacterError PASS (''): InvalidCharacterError
PASS ('0'): InvalidCharacterError PASS ('0'): InvalidCharacterError

View file

@ -1,8 +1,8 @@
display-none visible: false display-none visible: false
content-visibility-parent visible: true content-visibility-parent visible: true
content-visibility-child visible: false content-visibility-child visible: false
opacity-hidden visible: false opacity-hidden visible: false
opacity-visible visible: true opacity-visible visible: true
visibility-hidden visible: false visibility-hidden visible: false
visibility-visible visible: true visibility-visible visible: true
content-visibility-auto-hidden visible: true content-visibility-auto-hidden visible: true

View file

@ -1,4 +1,4 @@
form.length: 12 form.length: 12
elements.length: 12 elements.length: 12
form[0].name: foo form[0].name: foo
form[1].name: bar form[1].name: bar

View file

@ -1,4 +1,4 @@
== Elements and Names == == Elements and Names ==
formy.length: 12 formy.length: 12
elements.length: 12 elements.length: 12
elements[0] === form.foo elements[0] === form.foo

View file

@ -1 +1 @@
PASS (Didn't crash) PASS (Didn't crash)

View file

@ -1,4 +1,4 @@
HTMLAllCollection HTMLAllCollection
typeof document.all = undefined typeof document.all = undefined
equal to undefined = true equal to undefined = true
equal to null = true equal to null = true

View file

@ -1 +1 @@
Event: PointerEvent Event: PointerEvent

View file

@ -1,4 +1,3 @@
nodeName: CANVAS nodeName: CANVAS
offsetTop: 0 offsetTop: 0
offsetLeft: 0 offsetLeft: 0

View file

@ -1,3 +1,3 @@
form.action initial value: http://www.example.com/ form.action initial value: http://www.example.com/
Final segment of form.action after setting to the empty string: HTMLFormElement-action.html Final segment of form.action after setting to the empty string: HTMLFormElement-action.html
Final segment of form.action after setting to "../test.html": test.html Final segment of form.action after setting to "../test.html": test.html

View file

@ -1,2 +1,2 @@
Cloned checkbox checked: true Cloned checkbox checked: true
Cloned text input value: PASS Cloned text input value: PASS

View file

@ -1 +1 @@
PASS (didn't crash) PASS (didn't crash)

View file

@ -1,4 +1,4 @@
valueAsNumber getter: valueAsNumber getter:
number: 100 number: 100
range: 100 range: 100
hidden: NaN hidden: NaN

View file

@ -1,4 +1,4 @@
Form for #label-no-for is null Form for #label-no-for is null
Control for #label-no-for is null: true Control for #label-no-for is null: true
Form for #parent-of-input2: #form2 Form for #parent-of-input2: #form2
label.form is the same as label.control.form for #parent-of-input2: true label.form is the same as label.control.form for #parent-of-input2: true

View file

@ -1,4 +1,4 @@
Option element with no parent select returns null: true Option element with no parent select returns null: true
Option element with no parent form returns null: true Option element with no parent form returns null: true
Option element with no parent select returns null: true Option element with no parent select returns null: true
Option element within optgroup with no parent select returns null: true Option element within optgroup with no parent select returns null: true

View file

@ -1 +1 @@
PASS (didn't crash) PASS (didn't crash)

View file

@ -1 +1 @@
Option 1 PASS (correct value) PASS (correct value)

View file

@ -1 +1 @@
Option 1 PASS (correct value) PASS (correct value)

View file

@ -1 +1 @@
PASS (didn't crash) PASS (didn't crash)

View file

@ -1 +1 @@
Cloned textarea value: PASS Cloned textarea value: PASS

View file

@ -4,4 +4,4 @@ kind value after setting to "captions": 'captions'
kind value after setting to null: 'metadata' kind value after setting to null: 'metadata'
kind value after setting to "CHAPTERS": 'chapters' kind value after setting to "CHAPTERS": 'chapters'
kind value after setting to "": 'metadata' kind value after setting to "": 'metadata'
kind value after calling removeAttribute: 'subtitles' kind value after calling removeAttribute: 'subtitles'

View file

@ -1,4 +1,4 @@
Select files...4 files selected. input1: input1:
file1: text/plain: Contents for file1 file1: text/plain: Contents for file1
file2: text/plain: Contents for file2 file2: text/plain: Contents for file2
file3: text/plain: Contents for file3 file3: text/plain: Contents for file3

View file

@ -1,4 +1,4 @@
window.find(): false window.find(): false
window.find("this"): true, selection from: 0 to 4 window.find("this"): true, selection from: 0 to 4
window.find("this"): false window.find("this"): false
window.find("A"): true, selection from: 8 to 9 window.find("A"): true, selection from: 8 to 9

View file

@ -1 +1 @@
PASS (didn't crash) PASS (didn't crash)

View file

@ -1,4 +1,4 @@
george true true
true true
true true
true true

View file

@ -1,2 +1,2 @@
true true
true true

View file

@ -1,4 +1,4 @@
window.opener initial value: null window.opener initial value: null
window.opener after setting to "test": test window.opener after setting to "test": test
iframe contentWindow.opener initial value is the current window object: true iframe contentWindow.opener initial value is the current window object: true
iframe contentWindow.opener after setting to null: null iframe contentWindow.opener after setting to null: null

View file

@ -1,4 +1,4 @@
originError instanceof DOMException: true originError instanceof DOMException: true
originError.name: SyntaxError originError.name: SyntaxError
originError.message: Invalid URL for targetOrigin: 'aaaa' originError.message: Invalid URL for targetOrigin: 'aaaa'
originError.constructor === window.DOMException: true originError.constructor === window.DOMException: true

View file

@ -1,3 +1,3 @@
PASS (didn't crash) PASS (didn't crash)

View file

@ -1,2 +1,2 @@
http: http:
https: https:

View file

@ -1 +1 @@
/foo%C2%91%91 /foo%C2%91%91

View file

@ -1 +1 @@
Label Text input focused Text input focused

View file

@ -1 +1 @@
Label Checkbox changed Checkbox changed

View file

@ -1 +1 @@
PASS (didn't crash) PASS (didn't crash)

View file

@ -1,2 +1,2 @@
Entered TestElement constructor, throwing. Entered TestElement constructor, throwing.
PASS! (Didn't crash) PASS! (Didn't crash)

View file

@ -1 +1 @@
Slot directionality: ltr Slot directionality: ltr

View file

@ -1,4 +1,4 @@
Simple drag and drop: Simple drag and drop:
dragenter dragenter
types: Files types: Files
dragover dragover

View file

@ -1,4 +1,4 @@
enctype | application/x-www-form-urlencoded enctype | application/x-www-form-urlencoded
encoding | application/x-www-form-urlencoded encoding | application/x-www-form-urlencoded
enctype | text/plain enctype | text/plain

View file

@ -1 +1 @@
10,20 10,20

View file

@ -1,4 +1,4 @@
wfh :^) PASS wfh :^) PASS wfh :^) FAIL PASS FAIL wfh :^) FAIL FAIL PASS PASS wfh :^) wfh :^) PASS PASSwfh :^) FAIL wfh :^) FAIL wfh :^) wfh :^) FAIL wfh :^) wfh :^) defaultButton: click button=PASS defaultButton: click button=PASS
defaultButton: submit defaultButton: submit
defaultButton: handledEvent=true defaultButton: handledEvent=true
defaultButtonAsInput: click button=PASS defaultButtonAsInput: click button=PASS

View file

@ -1,4 +1,4 @@
button.formAction initial value: http://www.example.com/ button.formAction initial value: http://www.example.com/
Final segment of button.formAction after setting to the empty string: formAction-attribute.html Final segment of button.formAction after setting to the empty string: formAction-attribute.html
Final segment of button.formAction after setting to "../test.html": test.html Final segment of button.formAction after setting to "../test.html": test.html
input.formAction initial value: http://www.example.com/ input.formAction initial value: http://www.example.com/

View file

@ -1,4 +1,4 @@
<ol reversed="" xml:myattribute=""></ol> <ol reversed="" xml:myattribute=""></ol>
<ol xmlns:somename=""></ol> <ol xmlns:somename=""></ol>
<svg xmlns="http://www.w3.org/2000/svg"> <svg xmlns="http://www.w3.org/2000/svg">

View file

@ -1,2 +1,2 @@
user%20name user%20name
pa%40ss%3Aword pa%40ss%3Aword

View file

@ -1 +1 @@
Image height: 17895700 Image height: 17895700

View file

@ -1,2 +1,2 @@
hello students outerHTML: <div id="foo"><b>hello students</b></div> outerHTML: <div id="foo"><b>hello students</b></div>
innerHTML: <b>hello students</b> innerHTML: <b>hello students</b>

View file

@ -1 +1 @@
<details><summary></summary></details> <details><summary></summary></details>

View file

@ -1 +1 @@
<input> <input>

View file

@ -1 +1 @@
PASS (Didn't crash) PASS (Didn't crash)

View file

@ -1 +1 @@
<textarea></textarea> <textarea></textarea>

View file

@ -1,4 +1,3 @@
Changed box.
oldBox='<p>A box.</p>' oldBox='<p>A box.</p>'
newBox='<p>Changed box.</p>' newBox='<p>Changed box.</p>'
NoModificationAllowedError: Cannot set outer HTML on document NoModificationAllowedError: Cannot set outer HTML on document

View file

@ -1 +1 @@
PASS (didn't crash) PASS (didn't crash)

View file

@ -1 +1 @@
PASS! Did not click PASS! Did not click

View file

@ -1,4 +1,4 @@
2 2
[object HTMLTableRowElement] [object HTMLTableRowElement]
[object HTMLTableRowElement] [object HTMLTableRowElement]
PASS (didn't crash) PASS (didn't crash)

Some files were not shown because too many files have changed in this diff Show more