Skip to content

Commit

Permalink
Migrate to 0.16.0 browser-ui-test version
Browse files Browse the repository at this point in the history
  • Loading branch information
GuillaumeGomez committed May 11, 2023
1 parent 616fb42 commit 0630283
Show file tree
Hide file tree
Showing 14 changed files with 55 additions and 66 deletions.
3 changes: 2 additions & 1 deletion src/tools/rustdoc-gui/tester.js
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,7 @@ async function runTests(opts, framework_options, files, results, status_bar, sho
const tests_queue = [];

for (const testPath of files) {
const callback = runTest(testPath, framework_options)
const callback = runTest(testPath, {"options": framework_options})
.then(out => {
const [output, nb_failures] = out;
results[nb_failures === 0 ? "successful" : "failed"].push({
Expand Down Expand Up @@ -323,6 +323,7 @@ async function main(argv) {
if (results.failed.length > 0 || results.errored.length > 0) {
process.exit(1);
}
process.exit(0);
}

main(process.argv);
18 changes: 12 additions & 6 deletions tests/rustdoc-gui/check-stab-in-docblock.goml
Original file line number Diff line number Diff line change
Expand Up @@ -7,20 +7,26 @@ set-window-size: (786, 600)
// Confirms that there 3 paragraphs.
assert-count: (".top-doc .docblock p", 3)
// Checking that there is no scrollable content.
store-property: (clientHeight, ".top-doc .docblock p:nth-of-type(1)", "clientHeight")
store-property: (clientWidth, ".top-doc .docblock p:nth-of-type(1)", "clientWidth")
store-property: (".top-doc .docblock p:nth-of-type(1)", {
"clientHeight": clientHeight,
"clientWidth": clientWidth,
})
assert-property: (
".top-doc .docblock p:nth-of-type(1)",
{"scrollHeight": |clientHeight|, "scrollWidth": |clientWidth|},
)
store-property: (clientHeight, ".top-doc .docblock p:nth-of-type(2)", "clientHeight")
store-property: (clientWidth, ".top-doc .docblock p:nth-of-type(2)", "clientWidth")
store-property: (".top-doc .docblock p:nth-of-type(2)", {
"clientHeight": clientHeight,
"clientWidth": clientWidth,
})
assert-property: (
".top-doc .docblock p:nth-of-type(2)",
{"scrollHeight": |clientHeight|, "scrollWidth": |clientWidth|},
)
store-property: (clientHeight, ".top-doc .docblock p:nth-of-type(3)", "clientHeight")
store-property: (clientWidth, ".top-doc .docblock p:nth-of-type(3)", "clientWidth")
store-property: (".top-doc .docblock p:nth-of-type(3)", {
"clientHeight": clientHeight,
"clientWidth": clientWidth,
})
assert-property: (
".top-doc .docblock p:nth-of-type(3)",
{"scrollHeight": |clientHeight|, "scrollWidth": |clientWidth|},
Expand Down
2 changes: 1 addition & 1 deletion tests/rustdoc-gui/codeblock-sub.goml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Test that code blocks nested within <sub> do not have a line height of 0.
go-to: "file://" + |DOC_PATH| + "/test_docs/codeblock_sub/index.html"

store-property: (codeblock_sub_1, "#codeblock-sub-1", "offsetHeight")
store-property: ("#codeblock-sub-1", {"offsetHeight": codeblock_sub_1})
assert-property-false: ("#codeblock-sub-3", { "offsetHeight": |codeblock_sub_1| })
4 changes: 2 additions & 2 deletions tests/rustdoc-gui/item-info.goml
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ go-to: "file://" + |DOC_PATH| + "/lib2/struct.Foo.html"
// We set a fixed size so there is no chance of "random" resize.
set-window-size: (1100, 800)
// We check that ".item-info" is bigger than its content.
assert-css: (".item-info", {"width": "840px"})
assert-css: (".item-info .stab", {"width": "289px"})
assert-size: (".item-info", {"width": 840})
assert-size: (".item-info .stab", {"width": 289})
assert-position: (".item-info .stab", {"x": 245})

// Now we ensure that they're not rendered on the same line.
Expand Down
8 changes: 4 additions & 4 deletions tests/rustdoc-gui/notable-trait.goml
Original file line number Diff line number Diff line change
Expand Up @@ -225,12 +225,12 @@ assert: "#method\.create_an_iterator_from_read .tooltip:focus"

// Now we check that the focus isn't given back to the wrong item when opening
// another popover.
store-window-property: (scroll, "scrollY")
store-window-property: {"scrollY": scroll}
click: "#method\.create_an_iterator_from_read .fn"
// We ensure that the scroll position changed.
assert-window-property-false: {"scrollY": |scroll|}
// Store the new position.
store-window-property: (scroll, "scrollY")
store-window-property: {"scrollY": scroll}
click: "//*[@id='method.create_an_iterator_from_read']//*[@class='tooltip']"
wait-for: "//*[@class='tooltip popover']"
click: "#settings-menu a"
Expand All @@ -239,12 +239,12 @@ click: ".search-input"
assert-window-property-false: {"scrollY": |scroll|}

// Same but with Escape handling.
store-window-property: (scroll, "scrollY")
store-window-property: {"scrollY": scroll}
click: "#method\.create_an_iterator_from_read .fn"
// We ensure that the scroll position changed.
assert-window-property-false: {"scrollY": |scroll|}
// Store the new position.
store-window-property: (scroll, "scrollY")
store-window-property: {"scrollY": scroll}
click: "//*[@id='method.create_an_iterator_from_read']//*[@class='tooltip']"
wait-for: "//*[@class='tooltip popover']"
click: "#settings-menu a"
Expand Down
6 changes: 3 additions & 3 deletions tests/rustdoc-gui/scrape-examples-button-focus.goml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
go-to: "file://" + |DOC_PATH| + "/scrape_examples/fn.test.html"

// The next/prev buttons vertically scroll the code viewport between examples
store-property: (initialScrollTop, ".scraped-example-list > .scraped-example pre", "scrollTop")
store-property: (".scraped-example-list > .scraped-example pre", {"scrollTop": initialScrollTop})
focus: ".scraped-example-list > .scraped-example .next"
press-key: "Enter"
assert-property-false: (".scraped-example-list > .scraped-example pre", {
Expand All @@ -16,7 +16,7 @@ assert-property: (".scraped-example-list > .scraped-example pre", {
}, NEAR)

// The expand button increases the scrollHeight of the minimized code viewport
store-property: (smallOffsetHeight, ".scraped-example-list > .scraped-example pre", "offsetHeight")
store-property: (".scraped-example-list > .scraped-example pre", {"offsetHeight": smallOffsetHeight})
assert-property-false: (".scraped-example-list > .scraped-example pre", {
"scrollHeight": |smallOffsetHeight|
}, NEAR)
Expand All @@ -25,7 +25,7 @@ press-key: "Enter"
assert-property-false: (".scraped-example-list > .scraped-example pre", {
"offsetHeight": |smallOffsetHeight|
}, NEAR)
store-property: (fullOffsetHeight, ".scraped-example-list > .scraped-example pre", "offsetHeight")
store-property: (".scraped-example-list > .scraped-example pre", {"offsetHeight": fullOffsetHeight})
assert-property: (".scraped-example-list > .scraped-example pre", {
"scrollHeight": |fullOffsetHeight|
}, NEAR)
7 changes: 3 additions & 4 deletions tests/rustdoc-gui/scrape-examples-layout.goml
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,8 @@ assert-property-false: (

// Check that examples with very long lines have the same width as ones that don't.
store-property: (
clientWidth,
".more-scraped-examples .scraped-example:nth-child(2) .code-wrapper .src-line-numbers",
"clientWidth"
{"clientWidth": clientWidth},
)

assert-property: (
Expand Down Expand Up @@ -40,8 +39,8 @@ assert-property: (
store-value: (offset_y, 4)

// First with desktop
assert-position: (".scraped-example .code-wrapper", {"y": 253})
assert-position: (".scraped-example .code-wrapper .prev", {"y": 253 + |offset_y|})
assert-position: (".scraped-example .code-wrapper", {"y": 226})
assert-position: (".scraped-example .code-wrapper .prev", {"y": 226 + |offset_y|})

// Then with mobile
set-window-size: (600, 600)
Expand Down
4 changes: 2 additions & 2 deletions tests/rustdoc-gui/search-result-display.goml
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ set-text: (
)

// Then we compare again to confirm the height didn't change.
assert-css: ("#crate-search", {"width": "527px"})
assert-css: (".search-results-title", {"height": "50px", "width": "640px"})
assert-size: ("#crate-search", {"width": 527})
assert-size: (".search-results-title", {"height": 50, "width": 640})
// And we check that the `<select>` isn't bigger than its container (".search-results-title").
assert-css: ("#search", {"width": "640px"})

Expand Down
2 changes: 1 addition & 1 deletion tests/rustdoc-gui/settings.goml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ wait-for: "#settings"
assert-css: ("#settings", {"display": "block"})

// Store the line margin to compare with the settings.html later.
store-css: (setting_line_margin, ".setting-line", "margin")
store-css: (".setting-line", {"margin": setting_line_margin})

// Let's close it by clicking on the same button.
click: "#settings-menu"
Expand Down
14 changes: 8 additions & 6 deletions tests/rustdoc-gui/sidebar.goml
Original file line number Diff line number Diff line change
Expand Up @@ -152,14 +152,16 @@ assert-property: (".sidebar", {"clientWidth": "200"})

// Checks that all.html and index.html have their sidebar link in the same place.
go-to: "file://" + |DOC_PATH| + "/test_docs/index.html"
store-property: (index_sidebar_width, ".sidebar .location a", "clientWidth")
store-property: (index_sidebar_height, ".sidebar .location a", "clientHeight")
store-property: (index_sidebar_x, ".sidebar .location a", "offsetTop")
store-property: (index_sidebar_y, ".sidebar .location a", "offsetLeft")
store-property: (".sidebar .location a", {
"clientWidth": index_sidebar_width,
"clientHeight": index_sidebar_height,
"offsetTop": index_sidebar_y,
"offsetLeft": index_sidebar_x,
})
go-to: "file://" + |DOC_PATH| + "/test_docs/all.html"
assert-property: (".sidebar .location a", {
"clientWidth": |index_sidebar_width|,
"clientHeight": |index_sidebar_height|,
"offsetTop": |index_sidebar_x|,
"offsetLeft": |index_sidebar_y|,
"offsetTop": |index_sidebar_y|,
"offsetLeft": |index_sidebar_x|,
})
47 changes: 14 additions & 33 deletions tests/rustdoc-gui/source-code-page.goml
Original file line number Diff line number Diff line change
Expand Up @@ -117,9 +117,8 @@ assert-property: ("#source-sidebar details:first-of-type", {"open": "true"})

// Check the sidebar directory entries have a marker and spacing (desktop).
store-property: (
link_height,
"#source-sidebar > details:first-of-type.dir-entry[open] > .files > a",
"offsetHeight"
{"offsetHeight": link_height},
)
define-function: (
"check-sidebar-dir-entry",
Expand Down Expand Up @@ -147,16 +146,10 @@ define-function: (
)
}
)
store-property: (
source_sidebar_title_height,
"#source-sidebar > .title",
"offsetHeight"
)
store-property: (
source_sidebar_title_y,
"#source-sidebar > .title",
"offsetTop"
)
store-property: ("#source-sidebar > .title", {
"offsetHeight": source_sidebar_title_height,
"offsetTop": source_sidebar_title_y,
})
call-function: ("check-sidebar-dir-entry", {
"x": 0,
// border + margin = 6
Expand All @@ -182,16 +175,10 @@ assert-property: ("#main-content", {"offsetTop": 76})
// 21 = 76 - 34 - 21

// Check the sidebar directory entries have a marker and spacing (tablet).
store-property: (
source_sidebar_title_height,
"#source-sidebar > .title",
"offsetHeight"
)
store-property: (
source_sidebar_title_y,
"#source-sidebar > .title",
"offsetTop"
)
store-property: ("#source-sidebar > .title", {
"offsetHeight": source_sidebar_title_height,
"offsetTop": source_sidebar_title_y,
})
call-function: ("check-sidebar-dir-entry", {
"x": 0,
"y": |source_sidebar_title_y| + |source_sidebar_title_height| + 6,
Expand All @@ -202,22 +189,16 @@ set-window-size: (450, 700)
assert-css: ("nav.sub", {"flex-direction": "column"})

// Check the sidebar directory entries have a marker and spacing (phone).
store-property: (
source_sidebar_title_height,
"#source-sidebar > .title",
"offsetHeight"
)
store-property: (
source_sidebar_title_y,
"#source-sidebar > .title",
"offsetTop"
)
store-property: ("#source-sidebar > .title", {
"offsetHeight": source_sidebar_title_height,
"offsetTop": source_sidebar_title_y,
})
call-function: ("check-sidebar-dir-entry", {
"x": 0,
"y": |source_sidebar_title_y| + |source_sidebar_title_height| + 6,
})

// Now we check that the logo has a bottom margin so it's not stuck to the search input.
assert-css: (".sub-logo-container > img", {"margin-bottom": "8px"})
store-property: (logo_height, ".sub-logo-container", "clientHeight")
store-property: (".sub-logo-container", {"clientHeight": logo_height})
assert-position: (".search-form", {"y": |logo_height| + 8})
2 changes: 1 addition & 1 deletion tests/rustdoc-gui/src-font-size.goml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,6 @@ assert-css: (".impl-items .srclink", {"font-size": "16px", "font-weight": 400},
assert-css: (".impl-items .code-header", {"font-size": "16px", "font-weight": 600}, ALL)

// Check that we can click on source link
store-document-property: (url, "URL")
store-document-property: {"URL": url}
click: ".impl-items .srclink"
assert-document-property-false: {"URL": |url|}
2 changes: 1 addition & 1 deletion tests/rustdoc-gui/struct-fields.goml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// 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: (first_top, "//*[@id='structfield.first']", "offsetTop")
store-property: ("//*[@id='structfield.first']", {"offsetTop": first_top})
assert-property-false: ("//*[@id='structfield.second']", { "offsetTop": |first_top| })
2 changes: 1 addition & 1 deletion tests/rustdoc-gui/type-declation-overflow.goml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ assert-property: ("pre.item-decl", {"scrollWidth": "950"})
set-window-size: (600, 600)
go-to: "file://" + |DOC_PATH| + "/lib2/too_long/struct.SuperIncrediblyLongLongLongLongLongLongLongGigaGigaGigaMegaLongLongLongStructName.html"
// It shouldn't have an overflow in the topbar either.
store-property: (scrollWidth, ".mobile-topbar h2", "scrollWidth")
store-property: (".mobile-topbar h2", {"scrollWidth": scrollWidth})
assert-property: (".mobile-topbar h2", {"clientWidth": |scrollWidth|})
assert-css: (".mobile-topbar h2", {"overflow-x": "hidden"})

Expand Down

0 comments on commit 0630283

Please sign in to comment.