diff options
Diffstat (limited to '')
-rw-r--r-- | src/test/rustdoc-gui/search-result-color.goml | 288 |
1 files changed, 280 insertions, 8 deletions
diff --git a/src/test/rustdoc-gui/search-result-color.goml b/src/test/rustdoc-gui/search-result-color.goml index 9a49ae2c6..69bb30df9 100644 --- a/src/test/rustdoc-gui/search-result-color.goml +++ b/src/test/rustdoc-gui/search-result-color.goml @@ -1,5 +1,58 @@ // The goal of this test is to ensure the color of the text is the one expected. -goto: file://|DOC_PATH|/test_docs/index.html?search=coo + +define-function: ( + "check-result-color", + (result_kind, color, hover_color), + [ + ( + "assert-css", + (".result-" + |result_kind| + " ." + |result_kind|, {"color": |color|}, ALL), + ), + ( + "assert-css", + ( + ".result-" + |result_kind|, + {"color": |entry_color|, "background-color": |background_color|}, + ), + ), + ( + "move-cursor-to", + ".result-" + |result_kind|, + ), + ( + "assert-css", + ( + ".result-" + |result_kind| + ":hover", + {"color": |hover_entry_color|, "background-color": |hover_background_color|}, + ), + ), + ( + "assert-css", + (".result-" + |result_kind| + ":hover ." + |result_kind|, {"color": |hover_color|}), + ), + ( + "move-cursor-to", + ".search-input", + ), + ( + "focus", + ".result-" + |result_kind|, + ), + ( + "assert-css", + ( + ".result-" + |result_kind| + ":focus", + {"color": |hover_entry_color|, "background-color": |hover_background_color|}, + ), + ), + ( + "assert-css", + (".result-" + |result_kind| + ":focus ." + |result_kind|, {"color": |hover_color|}), + ), + ], +) + +goto: "file://" + |DOC_PATH| + "/test_docs/index.html?search=coo" // This is needed so that the text color is computed. show-text: true @@ -7,7 +60,6 @@ show-text: true // Ayu theme local-storage: { "rustdoc-theme": "ayu", - "rustdoc-preferred-dark-theme": "ayu", "rustdoc-use-system-theme": "false", } reload: @@ -23,16 +75,97 @@ assert-css: ( {"color": "rgb(0, 150, 207)"}, ) -// Checking the color for "keyword". +// Checking the color of "keyword" text. assert-css: ( "//*[@class='result-name']//*[text()='(keyword)']", {"color": "rgb(120, 135, 151)"}, ) +store-value: (entry_color, "rgb(0, 150, 207)") // color of the search entry +store-value: (hover_entry_color, "rgb(255, 255, 255)") // color of the hovered/focused search entry +store-value: (background_color, "rgba(0, 0, 0, 0)") // background color +store-value: (hover_background_color, "rgb(60, 60, 60)") // hover background color + +call-function: ( + "check-result-color", ( + "keyword", // item kind + "rgb(57, 175, 215)", // color of item kind + "rgb(57, 175, 215)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "struct", // item kind + "rgb(255, 160, 165)", // color of item kind + "rgb(255, 160, 165)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "associatedtype", // item kind + "rgb(57, 175, 215)", // color of item kind + "rgb(57, 175, 215)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "tymethod", // item kind + "rgb(253, 214, 135)", // color of item kind + "rgb(253, 214, 135)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "method", // item kind + "rgb(253, 214, 135)", // color of item kind + "rgb(253, 214, 135)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "structfield", // item kind + "rgb(0, 150, 207)", // color of item kind + "rgb(255, 255, 255)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "macro", // item kind + "rgb(163, 122, 204)", // color of item kind + "rgb(163, 122, 204)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "fn", // item kind + "rgb(253, 214, 135)", // color of item kind + "rgb(253, 214, 135)", // color of hovered/focused item kind + ), +) + +// Checking the `<a>` container. +move-cursor-to: ".search-input" +focus: ".search-input" // To ensure the `<a>` container isnt focus or hover. +assert-css: ( + "//*[@class='result-name']/*[text()='test_docs::']/ancestor::a", + {"color": "rgb(0, 150, 207)", "background-color": "rgba(0, 0, 0, 0)"}, + ALL, +) + +// Checking color and background on hover. +move-cursor-to: "//*[@class='desc']//*[text()='Just a normal struct.']" +assert-css: ( + "//*[@class='result-name']/*[text()='test_docs::']", + {"color": "rgb(255, 255, 255)"}, +) +assert-css: ( + "//*[@class='result-name']/*[text()='test_docs::']/ancestor::a", + {"color": "rgb(255, 255, 255)", "background-color": "rgb(60, 60, 60)"}, +) + // Dark theme local-storage: { "rustdoc-theme": "dark", - "rustdoc-preferred-dark-theme": "dark", "rustdoc-use-system-theme": "false", } reload: @@ -48,12 +181,82 @@ assert-css: ( {"color": "rgb(221, 221, 221)"}, ) -// Checking the color for "keyword". +// Checking the color for "keyword" text. assert-css: ( "//*[@class='result-name']//*[text()='(keyword)']", {"color": "rgb(221, 221, 221)"}, ) +store-value: (entry_color, "rgb(221, 221, 221)") // color of the search entry +store-value: (hover_entry_color, "rgb(221, 221, 221)") // color of the hovered/focused search entry +store-value: (background_color, "rgba(0, 0, 0, 0)") // background color +store-value: (hover_background_color, "rgb(97, 97, 97)") // hover background color + +call-function: ( + "check-result-color", ( + "keyword", // item kind + "rgb(210, 153, 29)", // color of item kind + "rgb(210, 153, 29)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "struct", // item kind + "rgb(45, 191, 184)", // color of item kind + "rgb(45, 191, 184)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "associatedtype", // item kind + "rgb(210, 153, 29)", // color of item kind + "rgb(210, 153, 29)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "tymethod", // item kind + "rgb(43, 171, 99)", // color of item kind + "rgb(43, 171, 99)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "method", // item kind + "rgb(43, 171, 99)", // color of item kind + "rgb(43, 171, 99)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "structfield", // item kind + "rgb(221, 221, 221)", // color of item kind + "rgb(221, 221, 221)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "macro", // item kind + "rgb(9, 189, 0)", // color of item kind + "rgb(9, 189, 0)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "fn", // item kind + "rgb(43, 171, 99)", // color of item kind + "rgb(43, 171, 99)", // color of hovered/focused item kind + ), +) + +// Checking the `<a>` container. +move-cursor-to: ".search-input" +focus: ".search-input" // To ensure the `<a>` container isnt focus or hover. +assert-css: ( + "//*[@class='result-name']/*[text()='test_docs::']/ancestor::a", + {"color": "rgb(221, 221, 221)", "background-color": "rgba(0, 0, 0, 0)"}, +) + // Light theme local-storage: {"rustdoc-theme": "light", "rustdoc-use-system-theme": "false"} reload: @@ -69,19 +272,88 @@ assert-css: ( {"color": "rgb(0, 0, 0)"}, ) -// Checking the color for "keyword". +// Checking the color for "keyword" text. assert-css: ( "//*[@class='result-name']//*[text()='(keyword)']", {"color": "rgb(0, 0, 0)"}, ) +store-value: (entry_color, "rgb(0, 0, 0)") // color of the search entry +store-value: (hover_entry_color, "rgb(0, 0, 0)") // color of the hovered/focused search entry +store-value: (background_color, "rgba(0, 0, 0, 0)") // background color +store-value: (hover_background_color, "rgb(204, 204, 204)") // hover background color + +call-function: ( + "check-result-color", ( + "keyword", // item kind + "rgb(56, 115, 173)", // color of item kind + "rgb(56, 115, 173)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "struct", // item kind + "rgb(173, 55, 138)", // color of item kind + "rgb(173, 55, 138)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "associatedtype", // item kind + "rgb(56, 115, 173)", // color of item kind + "rgb(56, 115, 173)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "tymethod", // item kind + "rgb(173, 124, 55)", // color of item kind + "rgb(173, 124, 55)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "method", // item kind + "rgb(173, 124, 55)", // color of item kind + "rgb(173, 124, 55)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "structfield", // item kind + "rgb(0, 0, 0)", // color of item kind + "rgb(0, 0, 0)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "macro", // item kind + "rgb(6, 128, 0)", // color of item kind + "rgb(6, 128, 0)", // color of hovered/focused item kind + ), +) +call-function: ( + "check-result-color", ( + "fn", // item kind + "rgb(173, 124, 55)", // color of item kind + "rgb(173, 124, 55)", // color of hovered/focused item kind + ), +) + +// Checking the `<a>` container. +move-cursor-to: ".search-input" +focus: ".search-input" // To ensure the `<a>` container isnt focus or hover. +assert-css: ( + "//*[@class='result-name']/*[text()='test_docs::']/ancestor::a", + {"color": "rgb(0, 0, 0)", "background-color": "rgba(0, 0, 0, 0)"}, +) + // Check the alias more specifically in the dark theme. -goto: file://|DOC_PATH|/test_docs/index.html +goto: "file://" + |DOC_PATH| + "/test_docs/index.html" // We set the theme so we're sure that the correct values will be used, whatever the computer // this test is running on. local-storage: { "rustdoc-theme": "dark", - "rustdoc-preferred-dark-theme": "dark", "rustdoc-use-system-theme": "false", } // If the text isn't displayed, the browser doesn't compute color style correctly... |