Skip to content

Commit

Permalink
Rollup merge of rust-lang#109412 - GuillaumeGomez:add-gui-test, r=not…
Browse files Browse the repository at this point in the history
…riddle

rustdoc: Add GUI test for "Auto-hide item contents for large items" setting

Part of rust-lang#66181.

The `browser-ui-test` version update is because there wasn't `null` check for attributes so I added it (PR is [here](GuillaumeGomez/browser-UI-test#440)).

r? ``@notriddle``
  • Loading branch information
matthiaskrgr authored Mar 22, 2023
2 parents 44942ad + ab1573a commit a7570b0
Show file tree
Hide file tree
Showing 2 changed files with 52 additions and 1 deletion.
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.14.4
0.14.5
51 changes: 51 additions & 0 deletions tests/rustdoc-gui/setting-auto-hide-content-large-items.goml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
// This test ensures that the "Auto-hide item contents for large items" setting is working as
// expected.

// We need to disable this check because `implementors/test_docs/trait.Iterator.js` doesn't exist.
fail-on-request-error: false

define-function: (
"check-setting",
(storage_value, setting_attribute_value, toggle_attribute_value),
block {
assert-local-storage: {"rustdoc-auto-hide-large-items": |storage_value|}
click: "#settings-menu"
wait-for: "#settings"
assert-property: ("#auto-hide-large-items", {"checked": |setting_attribute_value|})
assert-attribute: (".item-decl .type-contents-toggle", {"open": |toggle_attribute_value|})
}
)

goto: "file://" + |DOC_PATH| + "/lib2/scroll_traits/trait.Iterator.html"

// We check that the setting is enabled by default and is working.
call-function: ("check-setting", {
"storage_value": null,
"setting_attribute_value": "true",
"toggle_attribute_value": null,
})

// Now we change its value.
click: "#auto-hide-large-items"
assert-local-storage: {"rustdoc-auto-hide-large-items": "false"}

// We check that the changes were applied as expected.
reload:

call-function: ("check-setting", {
"storage_value": "false",
"setting_attribute_value": "false",
"toggle_attribute_value": "",
})

// And now we re-enable the setting.
click: "#auto-hide-large-items"
assert-local-storage: {"rustdoc-auto-hide-large-items": "true"}

// And we check everything is back the way it was before.
reload:
call-function: ("check-setting", {
"storage_value": "true",
"setting_attribute_value": "true",
"toggle_attribute_value": null,
})

0 comments on commit a7570b0

Please sign in to comment.