-
Notifications
You must be signed in to change notification settings - Fork 0
/
params_test.ts
81 lines (75 loc) · 3.14 KB
/
params_test.ts
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
import { assertEquals } from "https://deno.land/std@0.224.0/testing/asserts.ts";
import { getParams } from "./params.ts";
import { defaultTheme } from "./theme.ts";
Deno.test("getParams", () => {
const url = new URL(
"http://localhost:8080/?cursor_color=ff0000&prompt_color=00ff00&bg_color=0000ff&title_color=ffffff&command_color=000000&top_line_bg_color=000000&top_line_text_color=ffffff&bottom_line_bg_color=000000&bottom_line_text_color=ffffff&top_line_item_colors=ffffff&bottom_line_item_colors=ffffff&top_line_texts=swfz&bottom_line_texts=til",
);
const params = getParams(url);
assertEquals(params, {
title: "No Title",
topLineTexts: ["swfz"],
topLineTextColor: "#ffffff",
topLineItemColors: ["#ffffff"],
topLineBgText: null,
topLineBgColor: "#000000",
bgColor: "#0000ff",
promptColor: "#00ff00",
commandColor: "#000000",
titleColor: "#ffffff",
cursorColor: "#ff0000",
bottomLineTexts: ["til"],
bottomLineTextColor: "#ffffff",
bottomLineItemColors: ["#ffffff"],
bottomLineBgText: "Tags",
bottomLineBgColor: "#000000",
});
});
Deno.test("getParams default values", () => {
const url = new URL(
"http://localhost:8080/",
);
const params = getParams(url);
assertEquals(params, {
title: "No Title",
topLineTexts: ["swfz", "til"],
topLineTextColor: defaultTheme.topStatusLine.textColor,
topLineItemColors: defaultTheme.topStatusLine.itemColors,
topLineBgText: null,
topLineBgColor: defaultTheme.topStatusLine.bgColor,
bgColor: defaultTheme.bgColor,
promptColor: defaultTheme.promptColor,
commandColor: defaultTheme.commandColor,
titleColor: defaultTheme.titleColor,
cursorColor: defaultTheme.cursorColor,
bottomLineTexts: [],
bottomLineTextColor: defaultTheme.bottomStatusLine.textColor,
bottomLineItemColors: defaultTheme.bottomStatusLine.itemColors,
bottomLineBgText: "Tags",
bottomLineBgColor: defaultTheme.bottomStatusLine.bgColor,
});
});
Deno.test("getParams Full Parameter Specified", () => {
const url = new URL(
"http://localhost:8080/?title=なんかのテスト&top_line_bg_text=hoge&cursor_color=ff0000&prompt_color=00ff00&bg_color=0000ff&title_color=ffffff&command_color=000000&top_line_bg_color=000000&top_line_text_color=ffffff&bottom_line_bg_color=000000&bottom_line_text_color=ffffff&top_line_item_colors=ffffff,eeeeee,dddddd&bottom_line_item_colors=111111,222222,333333,444444&top_line_texts=swfz,til,test&bottom_line_texts=hoge,fuga,piyo&bottom_line_bg_text=Labels",
);
const params = getParams(url);
assertEquals(params, {
title: "なんかのテスト",
topLineTexts: ["swfz", "til", "test"],
topLineTextColor: "#ffffff",
topLineItemColors: ["#ffffff", "#eeeeee", "#dddddd"],
topLineBgText: "hoge",
topLineBgColor: "#000000",
bgColor: "#0000ff",
promptColor: "#00ff00",
commandColor: "#000000",
titleColor: "#ffffff",
cursorColor: "#ff0000",
bottomLineTexts: ["hoge", "fuga", "piyo"],
bottomLineTextColor: "#ffffff",
bottomLineItemColors: ["#111111", "#222222", "#333333", "#444444"],
bottomLineBgText: "Labels",
bottomLineBgColor: "#000000",
});
});