Add GUI regression test for doc struct fields margins

This commit is contained in:
Guillaume Gomez 2024-10-27 11:26:45 +01:00
parent de7cef75be
commit c50bfda34f
2 changed files with 42 additions and 10 deletions

View File

@ -1,13 +1,36 @@
// This test checks that fields are displayed as expected (one by line).
go-to: "file://" + |DOC_PATH| + "/test_docs/fields/struct.Struct.html"
store-position: ("#structfield\.a", {"y": a_y})
store-position: ("#structfield\.b", {"y": b_y})
// This test checks that fields are displayed as expected (one by line) and they are surrounded
// by margins.
define-function: (
"check-fields",
[path, selector_1, selector_2],
block {
go-to: "file://" + |DOC_PATH| + "/test_docs/fields/" + |path|
store-position: (|selector_1|, {"y": a_y})
store-position: (|selector_2|, {"y": b_y})
assert: |a_y| < |b_y|
go-to: "file://" + |DOC_PATH| + "/test_docs/fields/union.Union.html"
store-position: ("#structfield\.a", {"y": a_y})
store-position: ("#structfield\.b", {"y": b_y})
assert: |a_y| < |b_y|
// Check the margins.
assert-css: (".structfield.section-header", {
"margin-top": "9.6px",
"margin-bottom": "9.6px",
"margin-left": "0px",
"margin-right": "0px",
}, ALL)
}
)
call-function: ("check-fields", {
"path": "struct.Struct.html",
"selector_1": "#structfield\.a",
"selector_2": "#structfield\.b",
})
call-function: ("check-fields", {
"path": "union.Union.html",
"selector_1": "#structfield\.a",
"selector_2": "#structfield\.b",
})
go-to: "file://" + |DOC_PATH| + "/test_docs/fields/enum.Enum.html"
store-position: ("#variant\.A\.field\.a", {"y": a_y})
@ -16,3 +39,11 @@ assert: |a_y| < |b_y|
store-position: ("#variant\.B\.field\.a", {"y": a_y})
store-position: ("#variant\.B\.field\.b", {"y": b_y})
assert: |a_y| < |b_y|
// Check the margins.
assert-css: (".sub-variant-field .section-header", {
"margin-top": "0px",
"margin-bottom": "0px",
"margin-left": "0px",
"margin-right": "0px",
}, ALL)

View File

@ -1,4 +1,5 @@
// This test ensures that each field is on its own line (In other words, they have display: block).
// This test ensures that each field is on its own line (In other words, they have
// `display: block`).
go-to: "file://" + |DOC_PATH| + "/test_docs/struct.StructWithPublicUndocumentedFields.html"
store-property: ("//*[@id='structfield.first']", {"offsetTop": first_top})