rust/tests/rustdoc-gui
Matthias Krüger b39db705f5
Rollup merge of #109633 - GuillaumeGomez:fix-go-to-only-setting, r=notriddle
Fix "Directly go to item in search if there is only one result" setting

Part of #66181.

The setting was actually broken, so I fixed it when I added the GUI test.

r? `@notriddle`
2023-03-27 08:46:53 +02:00
..
src rustdoc: update test case to deal with "coo" only accepting dist=1 2023-01-21 00:11:39 -07:00
anchor-navigable.goml
anchors.goml
basic-code.goml Add small description to GUI test 2023-01-15 12:58:04 +01:00
check_info_sign_position.goml
check-code-blocks-margin.goml
check-stab-in-docblock.goml
code-blocks-overflow.goml
code-color.goml
code-sidebar-toggle.goml
code-tags.goml rustdoc: remove unnecessary wrapper div.item-decl from HTML 2023-01-30 11:06:18 -07:00
codeblock-sub.goml
codeblock-tooltip.goml rustdoc: merge doctest tooltip with notable traits tooltip 2023-01-27 09:04:39 -07:00
cursor.goml
default-settings.goml
docblock-big-code-mobile.goml
docblock-code-block-line-number.goml
docblock-details.goml
docblock-table-overflow.goml
docblock-table.goml
duplicate-macro-reexport.goml
enum-variants.goml
escape-key.goml
font-weight.goml rustdoc: remove unnecessary wrapper div.item-decl from HTML 2023-01-30 11:06:18 -07:00
hash-item-expansion.goml
headers-color.goml
headings.goml
help-page.goml No need for the wait-for anymore to go around browser navigation bug 2023-02-23 22:04:38 +01:00
highlight-colors.goml
huge-collection-of-constants.goml rustdoc: simplify DOM for .item-table 2023-02-07 19:00:42 -07:00
huge-logo.goml
impl-default-expansion.goml
impl-doc.goml
implementors.goml
item-decl-colors.goml
item-info-alignment.goml
item-info-overflow.goml
item-info.goml
item-summary-table.goml rustdoc: simplify DOM for .item-table 2023-02-07 19:00:42 -07:00
javascript-disabled.goml
jump-to-def-background.goml
label-next-to-symbol.goml rustdoc: simplify DOM for .item-table 2023-02-07 19:00:42 -07:00
links-color.goml
list_code_block.goml rustdoc: remove unnecessary wrapper div.item-decl from HTML 2023-01-30 11:06:18 -07:00
method-margins.goml
mobile.goml rustdoc: use tighter line height in h1 and h2 2023-02-12 12:30:57 -07:00
module-items-font.goml rustdoc: simplify DOM for .item-table 2023-02-07 19:00:42 -07:00
no-docblock.goml
notable-trait.goml rustdoc: merge doctest tooltip with notable traits tooltip 2023-01-27 09:04:39 -07:00
overflow-tooltip-information.goml
pocket-menu.goml
README.md
run-on-hover.goml
rust-logo.goml
scrape-examples-button-focus.goml Update browser-ui-test version 2023-03-08 12:49:35 -07:00
scrape-examples-color.goml Extend rustdoc GUI test for scraped examples top and bottom "borders" 2023-01-21 12:16:02 +01:00
scrape-examples-fonts.goml
scrape-examples-layout.goml rustdoc: use tighter line height in h1 and h2 2023-02-12 12:30:57 -07:00
scrape-examples-toggle.goml
search-error.goml Add GUI test for rustdoc search errors background 2023-03-02 12:59:04 +01:00
search-filter.goml
search-form-elements.goml
search-input-mobile.goml
search-keyboard.goml
search-no-result.goml
search-reexport.goml
search-result-color.goml
search-result-description.goml
search-result-display.goml rustdoc: use tighter line height in h1 and h2 2023-02-12 12:30:57 -07:00
search-result-go-to-first.goml
search-result-keyword.goml
search-tab-change-title-fn-sig.goml
search-tab.goml
setting-auto-hide-content-large-items.goml Add GUI test for "Auto-hide item contents for large items" setting 2023-03-20 20:25:35 +01:00
setting-auto-hide-item-methods-docs.goml Add GUI test for "Auto-hide item methods' documentation" setting 2023-03-24 16:57:55 +01:00
setting-auto-hide-trait-implementations.goml Improve "Auto-hide trait implementation documentation" GUI test 2023-03-25 15:28:18 +01:00
setting-go-to-only-result.goml Add GUI test for "Directly go to item in search if there is only one result" setting 2023-03-26 17:50:09 +02:00
settings.goml rustdoc: simplify settings popover DOM 2023-01-23 15:08:33 -07:00
shortcuts.goml
sidebar-links-color.goml
sidebar-macro-reexport.goml
sidebar-mobile-scroll.goml rustdoc: use tighter line height in h1 and h2 2023-02-12 12:30:57 -07:00
sidebar-mobile.goml rustdoc: use tighter line height in h1 and h2 2023-02-12 12:30:57 -07:00
sidebar-source-code-display.goml
sidebar-source-code.goml
sidebar.goml rustdoc: include link on all.html location header 2023-03-04 11:54:28 -07:00
source-anchor-scroll.goml
source-code-page.goml
src-font-size.goml rustdoc: remove unused class has-srclink 2023-01-28 17:18:56 -07:00
stab-badge.goml
struct-fields.goml
target.goml
theme-change.goml rustdoc: simplify settings popover DOM 2023-01-23 15:08:33 -07:00
theme-in-history.goml
toggle-click-deadspace.goml
toggle-docs-mobile.goml
toggle-docs.goml
toggle-implementors.goml
toggled-open-implementations.goml
trait-sidebar-item-order.goml
type-declation-overflow.goml rustdoc: remove unnecessary wrapper div.item-decl from HTML 2023-01-30 11:06:18 -07:00
unsafe-fn.goml rustdoc: simplify DOM for .item-table 2023-02-07 19:00:42 -07:00
where-whitespace.goml

The tests present here are used to test the generated HTML from rustdoc. The goal is to prevent unsound/unexpected GUI changes.

This is using the browser-ui-test framework to do so. It works as follows:

It wraps puppeteer to send commands to a web browser in order to navigate and test what's being currently displayed in the web page.

You can find more information and its documentation in its repository.

If you need to have more information on the tests run, you can use --test-args:

$ ./x.py test tests/rustdoc-gui --stage 1 --test-args --debug

If you don't want to run in headless mode (helpful to debug sometimes), you can use --no-headless:

$ ./x.py test tests/rustdoc-gui --stage 1 --test-args --no-headless

To see the supported options, use --help.

Important to be noted: if the chromium instance crashes when you run it, you might need to use --no-sandbox to make it work:

$ ./x.py test tests/rustdoc-gui --stage 1 --test-args --no-sandbox