]> git.lizzy.rs Git - rust.git/blob - src/test/rustdoc-gui/anchors.goml
Rollup merge of #92981 - RalfJung:const_ptr_offset_from, r=dtolnay
[rust.git] / src / test / rustdoc-gui / anchors.goml
1 // This test is to ensure that the anchors (`ยง`) have the expected color and position.
2 goto: file://|DOC_PATH|/test_docs/struct.HeavilyDocumentedStruct.html
3 show-text: true
4
5 // This is needed to ensure that the text color is computed.
6 show-text: true
7
8 // Set the theme to light.
9 local-storage: {"rustdoc-theme": "light", "rustdoc-use-system-theme": "false"}
10 // We reload the page so the local storage settings are being used.
11 reload:
12
13 assert-css: ("#toggle-all-docs", {"color": "rgb(0, 0, 0)"})
14 assert-css: (".fqn .in-band a:nth-of-type(1)", {"color": "rgb(0, 0, 0)"})
15 assert-css: (".fqn .in-band a:nth-of-type(2)", {"color": "rgb(173, 55, 138)"})
16 assert-css: (".srclink", {"color": "rgb(56, 115, 173)"})
17
18 move-cursor-to: ".main-heading .srclink"
19 assert-css: (".srclink", {"text-decoration": "underline solid rgb(56, 115, 173)"})
20
21 assert-css: ("#top-doc-prose-title", {"color": "rgb(0, 0, 0)"})
22
23 assert-css: (".sidebar a", {"color": "rgb(0, 0, 0)"})
24 assert-css: (".in-band a", {"color": "rgb(0, 0, 0)"})
25
26 // We move the cursor over the "Implementations" title so the anchor is displayed.
27 move-cursor-to: "h2#implementations"
28 assert-css: ("h2#implementations a.anchor", {"color": "rgb(0, 0, 0)"})
29
30 // Same thing with the impl block title.
31 move-cursor-to: "#impl"
32 assert-css: ("#impl a.anchor", {"color": "rgb(0, 0, 0)"})
33
34 // Now we check the positions: only the first heading of the top doc comment should
35 // have a different position.
36 move-cursor-to: ".top-doc .docblock .section-header:first-child"
37 assert-css: (
38     ".top-doc .docblock .section-header:first-child > a::before",
39     {"left": "-10px", "padding-right": "10px"},
40 )
41 // We also check that the heading itself has a different indent.
42 assert-css: (".top-doc .docblock .section-header:first-child", {"margin-left": "15px"})
43
44 move-cursor-to: ".top-doc .docblock .section-header:not(:first-child)"
45 assert-css: (
46     ".top-doc .docblock .section-header:not(:first-child) > a::before",
47     {"left": "-25px", "padding-right": "10px"},
48 )
49 assert-css: (".top-doc .docblock .section-header:not(:first-child)", {"margin-left": "0px"})
50
51 // Now let's check some other docblock headings...
52 // First the impl block docs.
53 move-cursor-to: "#title-for-struct-impl-doc"
54 assert-css: (
55     "#title-for-struct-impl-doc > a::before",
56     {"left": "-25px", "padding-right": "10px"},
57 )
58 assert-css: ("#title-for-struct-impl-doc", {"margin-left": "0px"})
59 // Now a method docs.
60 move-cursor-to: "#title-for-struct-impl-item-doc"
61 assert-css: (
62     "#title-for-struct-impl-item-doc > a::before",
63     {"left": "-25px", "padding-right": "10px"},
64 )
65 assert-css: ("#title-for-struct-impl-item-doc", {"margin-left": "0px"})
66
67 // Finally, we want to ensure that if the first element of the doc block isn't a heading,
68 // if there is a heading afterwards, it won't have the indent.
69 goto: file://|DOC_PATH|/test_docs/enum.WhoLetTheDogOut.html
70
71 move-cursor-to: ".top-doc .docblock .section-header"
72 assert-css: (
73     ".top-doc .docblock .section-header > a::before",
74     {"left": "-25px", "padding-right": "10px"},
75 )
76 assert-css: (".top-doc .docblock .section-header", {"margin-left": "0px"})