rust/tests/rustdoc-gui
bors 7c3f0d6f30 Auto merge of #107141 - notriddle:notriddle/max-lev-distance-2023, r=GuillaumeGomez
rustdoc: compute maximum Levenshtein distance based on the query

Preview: https://notriddle.com/notriddle-rustdoc-demos/search-lev-distance-2023/std/index.html?search=regex

The heuristic is pretty close to the name resolver, maxLevDistance = `Math.floor(queryLen / 3)`.

Fixes #103357
Fixes #82131

Similar to https://github.com/rust-lang/rust/pull/103710, but following the suggestion in https://github.com/rust-lang/rust/pull/103710#issuecomment-1296360267 to use `floor` instead of `ceil`, and unblocked now that https://github.com/rust-lang/rust/pull/105796 made it so that setting the max lev distance to `0` doesn't cause substring matches to be removed.
2023-02-06 02:09:00 +00: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 Move /src/test to /tests 2023-01-11 09:32:08 +00:00
anchors.goml rustdoc: remove unnecessary DOM class h1.fqn 2023-01-13 10:09:25 -07:00
auto-hide-trait-implementations.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
basic-code.goml Add small description to GUI test 2023-01-15 12:58:04 +01:00
check_info_sign_position.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
check-code-blocks-margin.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
check-stab-in-docblock.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
code-blocks-overflow.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
code-color.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
code-sidebar-toggle.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
code-tags.goml rustdoc: remove unnecessary wrapper div.item-decl from HTML 2023-01-30 11:06:18 -07:00
codeblock-sub.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
codeblock-tooltip.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
cursor.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
default-settings.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
docblock-big-code-mobile.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
docblock-code-block-line-number.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
docblock-details.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
docblock-table-overflow.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
docblock-table.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
duplicate-macro-reexport.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
enum-variants.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
escape-key.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
font-weight.goml rustdoc: remove unnecessary wrapper div.item-decl from HTML 2023-01-30 11:06:18 -07:00
hash-item-expansion.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
headers-color.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
headings.goml rustdoc: remove unnecessary DOM class h1.fqn 2023-01-13 10:09:25 -07:00
help-page.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
highlight-colors.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
huge-collection-of-constants.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
huge-logo.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
impl-default-expansion.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
impl-doc.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
implementors.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
item-decl-colors.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
item-info-alignment.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
item-info-overflow.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
item-info.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
item-summary-table.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
javascript-disabled.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
jump-to-def-background.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
label-next-to-symbol.goml rustdoc: remove mostly-unused CSS classes import/module-item 2023-01-26 12:55:19 -07:00
links-color.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
list_code_block.goml rustdoc: remove unnecessary wrapper div.item-decl from HTML 2023-01-30 11:06:18 -07:00
method-margins.goml rustdoc: rename CSS rustdoc-toggle -> toggle and toggle -> settings-toggle 2023-01-13 12:38:03 -07:00
mobile.goml rustdoc: simplify settings popover DOM 2023-01-23 15:08:33 -07:00
module-items-font.goml rustdoc: remove mostly-unused CSS classes import/module-item 2023-01-26 12:55:19 -07:00
no-docblock.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
notable-trait.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
overflow-tooltip-information.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
pocket-menu.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
README.md Change src/test to tests in source files, fix tidy and tests 2023-01-11 09:32:13 +00:00
run-on-hover.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
rust-logo.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
scrape-examples-button-focus.goml Add explanation for GUI test 2023-01-14 18:30:33 +01: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 Move /src/test to /tests 2023-01-11 09:32:08 +00:00
scrape-examples-layout.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
scrape-examples-toggle.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
search-filter.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
search-form-elements.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
search-input-mobile.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
search-keyboard.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
search-no-result.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
search-reexport.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
search-result-color.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
search-result-description.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
search-result-display.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
search-result-go-to-first.goml rustdoc: remove unnecessary DOM class h1.fqn 2023-01-13 10:09:25 -07:00
search-result-keyword.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
search-tab-change-title-fn-sig.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
search-tab.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
settings.goml rustdoc: simplify settings popover DOM 2023-01-23 15:08:33 -07:00
shortcuts.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
sidebar-links-color.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
sidebar-macro-reexport.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
sidebar-mobile-scroll.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
sidebar-mobile.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
sidebar-source-code-display.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
sidebar-source-code.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
sidebar.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
source-anchor-scroll.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
source-code-page.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
src-font-size.goml rustdoc: remove unused class has-srclink 2023-01-28 17:18:56 -07:00
stab-badge.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
struct-fields.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
target.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
theme-change.goml rustdoc: simplify settings popover DOM 2023-01-23 15:08:33 -07:00
theme-in-history.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
toggle-click-deadspace.goml Rollup merge of #106819 - notriddle:notriddle/rm-h1-fqn, r=GuillaumeGomez 2023-01-14 12:04:37 +09:00
toggle-docs-mobile.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
toggle-docs.goml rustdoc: rename CSS rustdoc-toggle -> toggle and toggle -> settings-toggle 2023-01-13 12:38:03 -07:00
toggle-implementors.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
toggled-open-implementations.goml rustdoc: rename CSS rustdoc-toggle -> toggle and toggle -> settings-toggle 2023-01-13 12:38:03 -07:00
trait-sidebar-item-order.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00
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: make item links consistently use title="{shortty} {path}" 2023-01-23 14:31:35 -07:00
where-whitespace.goml Move /src/test to /tests 2023-01-11 09:32:08 +00:00

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