summaryrefslogtreecommitdiffstats
path: root/tests/rustdoc-gui/codeblock-tooltip.goml
blob: 2ed0579d3141b2033f399e6a3d8c599ce2f6c17d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
// Checking the colors of the codeblocks tooltips.
go-to: "file://" + |DOC_PATH| + "/test_docs/fn.foo.html"
show-text: true

define-function: (
    "check-colors",
    (theme, background, color, border),
    block {
        // Setting the theme.
        set-local-storage: {"rustdoc-theme": |theme|, "rustdoc-use-system-theme": "false"}
        reload:

        // compile_fail block
        assert-css: (
            ".docblock .example-wrap.compile_fail .tooltip",
            {"color": "rgba(255, 0, 0, 0.5)"},
        )
        assert-css: (
            ".docblock .example-wrap.compile_fail",
            {"border-left": "2px solid rgba(255, 0, 0, 0.5)"},
        )

        move-cursor-to: ".docblock .example-wrap.compile_fail .tooltip"

        assert-css: (
            ".docblock .example-wrap.compile_fail .tooltip",
            {"color": "rgb(255, 0, 0)"},
        )
        assert-css: (
            ".docblock .example-wrap.compile_fail",
            {"border-left": "2px solid rgb(255, 0, 0)"},
        )
        click: ".docblock .example-wrap.compile_fail .tooltip"
        assert-text: (
            ".popover.tooltip",
            "This example deliberately fails to compile"
        )
        assert-css: (".popover.tooltip", {
            "color": |color|,
            "background-color": |background|,
            "border-color": |border|,
        })

        // should_panic block
        assert-css: (
            ".docblock .example-wrap.should_panic .tooltip",
            {"color": "rgba(255, 0, 0, 0.5)"},
        )
        assert-css: (
            ".docblock .example-wrap.should_panic",
            {"border-left": "2px solid rgba(255, 0, 0, 0.5)"},
        )

        move-cursor-to: ".docblock .example-wrap.should_panic .tooltip"

        assert-css: (
            ".docblock .example-wrap.should_panic .tooltip",
            {"color": "rgb(255, 0, 0)"},
        )
        assert-css: (
            ".docblock .example-wrap.should_panic",
            {"border-left": "2px solid rgb(255, 0, 0)"},
        )
        click: ".docblock .example-wrap.should_panic .tooltip"
        assert-text: (
            ".popover.tooltip",
            "This example panics"
        )
        assert-css: (".popover.tooltip", {
            "color": |color|,
            "background-color": |background|,
            "border-color": |border|,
        })

        // ignore block
        assert-css: (
            ".docblock .example-wrap.ignore .tooltip",
            {"color": "rgba(255, 142, 0, 0.6)"},
        )
        assert-css: (
            ".docblock .example-wrap.ignore",
            {"border-left": "2px solid rgba(255, 142, 0, 0.6)"},
        )

        move-cursor-to: ".docblock .example-wrap.ignore .tooltip"

        assert-css: (
            ".docblock .example-wrap.ignore .tooltip",
            {"color": "rgb(255, 142, 0)"},
        )
        assert-css: (
            ".docblock .example-wrap.ignore",
            {"border-left": "2px solid rgb(255, 142, 0)"},
        )
        click: ".docblock .example-wrap.ignore .tooltip"
        assert-text: (
            ".popover.tooltip",
            "This example is not tested"
        )
        assert-css: (".popover.tooltip", {
            "color": |color|,
            "background-color": |background|,
            "border-color": |border|,
        })
        click: ".docblock .example-wrap.ignore .tooltip"
        assert-false: ".popover.tooltip"
    },
)

call-function: ("check-colors", {
    "theme": "ayu",
    "background": "rgb(15, 20, 25)",
    "color": "rgb(197, 197, 197)",
    "border": "rgb(92, 103, 115)",
})
call-function: ("check-colors", {
    "theme": "dark",
    "background": "rgb(53, 53, 53)",
    "color": "rgb(221, 221, 221)",
    "border": "rgb(224, 224, 224)",
})
call-function: ("check-colors", {
    "theme": "light",
    "background": "rgb(255, 255, 255)",
    "color": "rgb(0, 0, 0)",
    "border": "rgb(224, 224, 224)",
})