mdbook/tests/gui/search.goml
Eric Huss 74200f7395 Fix search not showing in sub-directories
This fixes a problem where the search was not displaying in
sub-directories. The problem was that `searcher.js` only exists in one
place, and was loading `searchindex.json` with a relative path. However,
when loading from a subdirectory, it needs the appropriate `..` to reach
the root of the book.
2025-03-09 09:10:50 -07:00

33 lines
1.1 KiB
Text

// This tests basic search behavior.
// We disable the requests checks because `searchindex.json` will always fail
// locally (due to CORS), but the searchindex.js will succeed.
fail-on-request-error: false
go-to: |DOC_PATH| + "index.html"
define-function: (
"open-search",
[],
block {
assert-css: ("#search-wrapper", {"display": "none"})
press-key: 'S'
wait-for-css-false: ("#search-wrapper", {"display": "none"})
}
)
call-function: ("open-search", {})
assert-text: ("#searchresults-header", "")
write: "strikethrough"
wait-for-text: ("#searchresults-header", "2 search results for 'strikethrough':")
// Close the search display
press-key: 'Escape'
wait-for-css: ("#search-wrapper", {"display": "none"})
// Reopening the search should show the last value
call-function: ("open-search", {})
assert-text: ("#searchresults-header", "2 search results for 'strikethrough':")
// Navigate to a sub-chapter
go-to: "./individual/strikethrough.html"
assert-text: ("#searchresults-header", "")
call-function: ("open-search", {})
write: "strikethrough"
wait-for-text: ("#searchresults-header", "2 search results for 'strikethrough':")