summaryrefslogtreecommitdiffstats
path: root/tests/rustdoc-gui/rust-logo.goml
blob: 640ed152b0d59728d54196d701c4a71b76d7352b (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
// This test ensures that the correct style is applied to the rust logo in the sidebar.
go-to: "file://" + |DOC_PATH| + "/test_docs/index.html"

define-function: (
    "check-logo",
    (theme, filter),
    block {
        // Going to the doc page.
        go-to: "file://" + |DOC_PATH| + "/test_docs/index.html"
        // Changing theme.
        set-local-storage: {"rustdoc-theme": |theme|, "rustdoc-use-system-theme": "false"}
        reload:
        assert-css: (".rust-logo", {"filter": |filter|})
        // Going to the source code page.
        go-to: "file://" + |DOC_PATH| + "/src/test_docs/lib.rs.html"
        // Changing theme (since it's local files, the local storage works by folder).
        set-local-storage: {"rustdoc-theme": |theme|, "rustdoc-use-system-theme": "false"}
        reload:
        assert-css: (".rust-logo", {"filter": |filter|})
        // Now we check that the non-rust logos don't have a CSS filter set.
        go-to: "file://" + |DOC_PATH| + "/huge_logo/index.html"
        // Changing theme on the new page (again...).
        set-local-storage: {"rustdoc-theme": |theme|, "rustdoc-use-system-theme": "false"}
        reload:
        // Check there is no rust logo
        assert-false: ".rust-logo"
        // Check there is no filter.
        assert-css: (".sidebar .logo-container img", {"filter": "none"})
    },
)

call-function: (
    "check-logo",
    {
        "theme": "ayu",
        "filter": "drop-shadow(rgb(255, 255, 255) 1px 0px 0px) " +
            "drop-shadow(rgb(255, 255, 255) 0px 1px 0px) " +
            "drop-shadow(rgb(255, 255, 255) -1px 0px 0px) " +
            "drop-shadow(rgb(255, 255, 255) 0px -1px 0px)",
    },
)
call-function: (
    "check-logo",
    {
        "theme": "dark",
        "filter": "drop-shadow(rgb(255, 255, 255) 1px 0px 0px) " +
            "drop-shadow(rgb(255, 255, 255) 0px 1px 0px) " +
            "drop-shadow(rgb(255, 255, 255) -1px 0px 0px) " +
            "drop-shadow(rgb(255, 255, 255) 0px -1px 0px)",
    },
)
call-function: (
    "check-logo",
    {
        "theme": "light",
        "filter": "none",
    },
)