Skip to content

Commit

Permalink
meta: Initial reftests implementation.
Browse files Browse the repository at this point in the history
  • Loading branch information
sleepy-monax committed Sep 18, 2024
1 parent 8716f32 commit 7d66f70
Show file tree
Hide file tree
Showing 26 changed files with 1,236 additions and 40 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,5 @@ compile_commands.json
_local/
*._local
*.trace
*.iml
*.iml
.cache
163 changes: 163 additions & 0 deletions dev/borders/.ref/borders-test.xhtml.out
Original file line number Diff line number Diff line change
@@ -0,0 +1,163 @@
--- START OF DOM ---
(DOCUMENT
(DOCUMENT_TYPE name="html" publicId="" systemId="")
(ELEMENT tagName=html
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="lang" value="en")
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="__unknown__" value="http://www.w3.org/1999/xhtml")
(TEXT data="\n\n")
(ELEMENT tagName=head
(TEXT data="\n ")
(ELEMENT tagName=meta
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="charset" value="UTF-8")
)
(TEXT data="\n ")
(ELEMENT tagName=meta
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="name" value="viewport")
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="content" value="width=device-width, initial-scale=1.0")
)
(TEXT data="\n ")
(ELEMENT tagName=title
(TEXT data="Document")
)
(TEXT data="\n")
)
(TEXT data="\n\n")
(ELEMENT tagName=body
(TEXT data="\n")
(ELEMENT tagName=div
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="id" value="square")
(TEXT data="\n ")
(ELEMENT tagName=div
(TEXT data="\n ")
)
(TEXT data="\n")
)
(TEXT data="\n")
)
(TEXT data="\n\n")
(ELEMENT tagName=style
(TEXT data="\n #square {\n background-color: red;\n padding-top: 50px;\n padding-bottom: 50px;\n padding-right: 50px;\n padding-left: 50px;\n }\n\n div {\n height: 100px;\n width: 100px;\n border-right-style: solid;\n border-right-width: 5px;\n border-right-color: orange;\n border-bottom-style: solid;\n border-bottom-width: 20px;\n border-bottom-color: green;\n border-left-style: solid;\n border-left-width: 5px;\n border-left-color: violet;\n background-color: antiquewhite;\n border-top-left-radius: 12px 6px;\n border-bottom-right-radius: 30px;\n border-top-right-radius: 30px;\n border-bottom-left-radius: 30px;\n }\n\n @media (min-width: 600px) {\n #square {\n background-color: white;\n }\n }\n")
)
(TEXT data="\n\n")
)
)

--- END OF DOM ---

--- START OF STYLE ---
(style-book [(style-sheet text/css .
rules: [
(style-rule
selector: html
props: [
(display (display box: CONTENTS))
]
)
(style-rule
selector: (OR [head, style])
props: [
(display (display box: NONE))
]
)
(style-rule
selector: table
props: [
(display (display inside: TABLE, outside: BLOCK, item: NO))
]
)
(style-rule
selector: caption
props: [
(display (display internal: TABLE_CAPTION))
]
)
(style-rule
selector: colgroup
props: [
(display (display internal: TABLE_COLUMN_GROUP))
]
)
(style-rule
selector: col
props: [
(display (display internal: TABLE_COLUMN))
]
)
(style-rule
selector: thead
props: [
(display (display internal: TABLE_HEADER_GROUP))
]
)
(style-rule
selector: tbody
props: [
(display (display internal: TABLE_ROW_GROUP))
]
)
(style-rule
selector: tfoot
props: [
(display (display internal: TABLE_FOOTER_GROUP))
]
)
(style-rule
selector: tr
props: [
(display (display internal: TABLE_ROW))
]
)
(style-rule
selector: (OR [td, th])
props: [
(display (display internal: TABLE_CELL))
]
)
]
), (style-sheet text/css .
rules: [
(style-rule
selector: #square
props: [
(background-color [#00000000, #ff0000ff])
(padding-top 50PX)
(padding-bottom 50PX)
(padding-right 50PX)
(padding-left 50PX)
]
)
(style-rule
selector: div
props: [
(height 100PX)
(width 100PX)
(border-right-style (Vaev::BorderStyle 4))
(border-right-width 5PX)
(border-right-color #ffa500ff)
(border-bottom-style (Vaev::BorderStyle 4))
(border-bottom-width 20PX)
(border-bottom-color #008000ff)
(border-left-style (Vaev::BorderStyle 4))
(border-left-width 5PX)
(border-left-color #ee82eeff)
(background-color [#00000000, #faebd7ff])
(border-top-left-radius [12PX, 6PX])
(border-bottom-right-radius [30PX, 30PX])
(border-top-right-radius [30PX, 30PX])
(border-bottom-left-radius [30PX, 30PX])
]
)
(media-rule
media: width: 600PXi - 0PX
rules: [
(style-rule
selector: #square
props: [
(background-color [#00000000, #ffffffff])
]
)
]

]
)])
--- END OF STYLE ---
225 changes: 225 additions & 0 deletions dev/borders/.ref/borders.xhtml.out
Original file line number Diff line number Diff line change
@@ -0,0 +1,225 @@
--- START OF DOM ---
(DOCUMENT
(DOCUMENT_TYPE name="html" publicId="" systemId="")
(ELEMENT tagName=html
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="__unknown__" value="http://www.w3.org/1999/xhtml")
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="lang" value="en")
(TEXT data="\n\n")
(ELEMENT tagName=head
(TEXT data="\n ")
(ELEMENT tagName=meta
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="charset" value="UTF-8")
)
(TEXT data="\n ")
(ELEMENT tagName=meta
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="name" value="viewport")
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="content" value="width=device-width, initial-scale=1.0")
)
(TEXT data="\n ")
(ELEMENT tagName=title
(TEXT data="Document")
)
(TEXT data="\n\n ")
(ELEMENT tagName=style
(TEXT data="\n div {\n margin: 20px;\n padding: 20px;\n width: 80%;\n height: 80px;\n }\n\n div#example-1 {\n border: solid 10px;\n border-radius: 10px 40px 40px 10px;\n }\n\n div#example-2 {\n border: groove 1em red;\n border-radius: 2em;\n }\n\n div#example-3 {\n background: gold;\n border: ridge gold;\n border-radius: 13em/3em;\n }\n\n div#example-4 {\n border: none;\n border-radius: 40px 10px;\n background: gold;\n }\n\n div#example-5 {\n border: none;\n border-radius: 50%;\n background: burlywood;\n }\n\n div#example-6 {\n border: dotted;\n border-width: 10px 4px;\n border-radius: 10px 40px;\n }\n\n div#example-7 {\n border: dashed;\n border-width: 2px 4px;\n border-radius: 40px;\n }\n\n textarea#example-8 {\n border: solid 1px;\n border-radius: 32px 64px 64px 32px / 100px 40px 40px 10px;\n border-top-color: red;\n border-right-color: green;\n border-bottom-color: blue;\n border-left-color: yellow;\n border-width: 5px;\n }\n ")
)
(TEXT data="\n")
)
(TEXT data="\n\n")
(ELEMENT tagName=body
(TEXT data="\n ")
(ELEMENT tagName=textarea
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="id" value="example-8")
(TEXT data="\n ")
)
(TEXT data="\n\n ")
(ELEMENT tagName=div
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="id" value="example-1")
(TEXT data="\n ")
)
(TEXT data="\n\n ")
(ELEMENT tagName=div
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="id" value="example-2")
(TEXT data="\n ")
)
(TEXT data="\n\n ")
(ELEMENT tagName=div
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="id" value="example-3")
(TEXT data="\n ")
)
(TEXT data="\n\n ")
(ELEMENT tagName=div
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="id" value="example-4")
(TEXT data="\n ")
)
(TEXT data="\n\n ")
(ELEMENT tagName=div
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="id" value="example-5")
(TEXT data="\n ")
)
(TEXT data="\n\n ")
(ELEMENT tagName=div
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="id" value="example-6")
(TEXT data="\n ")
)
(TEXT data="\n\n ")
(ELEMENT tagName=div
(ATTRIBUTE namespaceURI="http://www.w3.org/1999/xhtml" prefix="HTML" localName="id" value="example-7")
(TEXT data="\n ")
)
(TEXT data="\n\n\n")
)
(TEXT data="\n\n")
)
)

--- END OF DOM ---

--- START OF STYLE ---
(style-book [(style-sheet text/css .
rules: [
(style-rule
selector: html
props: [
(display (display box: CONTENTS))
]
)
(style-rule
selector: (OR [head, style])
props: [
(display (display box: NONE))
]
)
(style-rule
selector: table
props: [
(display (display inside: TABLE, outside: BLOCK, item: NO))
]
)
(style-rule
selector: caption
props: [
(display (display internal: TABLE_CAPTION))
]
)
(style-rule
selector: colgroup
props: [
(display (display internal: TABLE_COLUMN_GROUP))
]
)
(style-rule
selector: col
props: [
(display (display internal: TABLE_COLUMN))
]
)
(style-rule
selector: thead
props: [
(display (display internal: TABLE_HEADER_GROUP))
]
)
(style-rule
selector: tbody
props: [
(display (display internal: TABLE_ROW_GROUP))
]
)
(style-rule
selector: tfoot
props: [
(display (display internal: TABLE_FOOTER_GROUP))
]
)
(style-rule
selector: tr
props: [
(display (display internal: TABLE_ROW))
]
)
(style-rule
selector: (OR [td, th])
props: [
(display (display internal: TABLE_CELL))
]
)
]
), (style-sheet text/css .
rules: [
(style-rule
selector: div
props: [
(margin (insets 20PX 20PX 20PX 20PX))
(padding (insets 20PX 20PX 20PX 20PX))
(height 80PX)
]
)
(style-rule
selector: (AND [div, #example-1])
props: [
(border 10PX-(Vaev::BorderStyle 4)-currentColor)
(border-radius (radii 10PX 10PX 40PX 40PX 40PX 40PX 10PX 10PX))
]
)
(style-rule
selector: (AND [div, #example-2])
props: [
(border 1EM-(Vaev::BorderStyle 6)-#ff0000ff)
(border-radius (radii 2EM 2EM 2EM 2EM 2EM 2EM 2EM 2EM))
]
)
(style-rule
selector: (AND [div, #example-3])
props: [
(background [#00000000, #ffd700ff])
(border 0PX-(Vaev::BorderStyle 7)-#ffd700ff)
(border-radius (radii 3EM 13EM 13EM 3EM 3EM 13EM 13EM 3EM))
]
)
(style-rule
selector: (AND [div, #example-4])
props: [
(border 0PX-(Vaev::BorderStyle 0)-currentColor)
(border-radius (radii 40PX 40PX 10PX 10PX 40PX 40PX 10PX 10PX))
(background [#00000000, #ffd700ff])
]
)
(style-rule
selector: (AND [div, #example-5])
props: [
(border 0PX-(Vaev::BorderStyle 0)-currentColor)
(background [#00000000, #deb887ff])
]
)
(style-rule
selector: (AND [div, #example-6])
props: [
(border 0PX-(Vaev::BorderStyle 2)-currentColor)
(border-width (insets 10PX 4PX 10PX 4PX))
(border-radius (radii 10PX 10PX 40PX 40PX 10PX 10PX 40PX 40PX))
]
)
(style-rule
selector: (AND [div, #example-7])
props: [
(border 0PX-(Vaev::BorderStyle 3)-currentColor)
(border-width (insets 2PX 4PX 2PX 4PX))
(border-radius (radii 40PX 40PX 40PX 40PX 40PX 40PX 40PX 40PX))
]
)
(style-rule
selector: (AND [textarea, #example-8])
props: [
(border 1PX-(Vaev::BorderStyle 4)-currentColor)
(border-radius (radii 100PX 32PX 64PX 40PX 40PX 64PX 32PX 10PX))
(border-top-color #ff0000ff)
(border-right-color #008000ff)
(border-bottom-color #0000ffff)
(border-left-color #ffff00ff)
(border-width (insets 5PX 5PX 5PX 5PX))
]
)
]
)])
--- END OF STYLE ---
File renamed without changes.
File renamed without changes.
Loading

0 comments on commit 7d66f70

Please sign in to comment.