File: chromium.rs

package info (click to toggle)
rust-csscolorparser 0.7.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 268 kB
  • sloc: makefile: 14
file content (213 lines) | stat: -rw-r--r-- 12,061 bytes parent folder | download
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
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
#[test]
fn random_colors() {
    // The color string is randomly generated, then parsed using Chromium 87.0.4280.66
    let test_data = vec![
        ("#9F2", [153, 255, 34, 255]),
        ("#919211", [145, 146, 17, 255]),
        ("#DF1A94", [223, 26, 148, 255]),
        ("#0E9665", [14, 150, 101, 255]),
        ("#D39", [221, 51, 153, 255]),
        ("#6EF1BB", [110, 241, 187, 255]),
        ("#5F2452", [95, 36, 82, 255]),
        ("#8E6", [136, 238, 102, 255]),
        ("#09BB", [0, 153, 187, 187]),
        ("#A51", [170, 85, 17, 255]),
        ("#E1FCF3", [225, 252, 243, 255]),
        ("#02E3", [0, 34, 238, 51]),
        ("#E6B2", [238, 102, 187, 34]),
        ("#8CEA3820", [140, 234, 56, 32]),
        ("#2B8", [34, 187, 136, 255]),
        ("#195", [17, 153, 85, 255]),
        ("#4B6", [68, 187, 102, 255]),
        ("#9AE", [153, 170, 238, 255]),
        ("#9D39E0", [157, 57, 224, 255]),
        ("#66E12CAC", [102, 225, 44, 172]),
        ("#27EB", [34, 119, 238, 187]),
        ("#9C12", [153, 204, 17, 34]),
        ("#86113903", [134, 17, 57, 3]),
        ("#B1C6ED", [177, 198, 237, 255]),
        ("#79D", [119, 153, 221, 255]),
        ("#D3F8B137", [211, 248, 177, 55]),
        ("#E2858DF2", [226, 133, 141, 242]),
        ("#B0DBA6", [176, 219, 166, 255]),
        ("#F7F", [255, 119, 255, 255]),
        ("#97C9", [153, 119, 204, 153]),
        ("#F06", [255, 0, 102, 255]),
        ("#243B", [34, 68, 51, 187]),
        ("#20DA", [34, 0, 221, 170]),
        ("#13C364B8", [19, 195, 100, 184]),
        ("#E515", [238, 85, 17, 85]),
        ("#A11C", [170, 17, 17, 204]),
        ("#488", [68, 136, 136, 255]),
        ("#5EE", [85, 238, 238, 255]),
        ("#5AB8A1", [90, 184, 161, 255]),
        ("#9A9AB8", [154, 154, 184, 255]),
        ("#EA9E", [238, 170, 153, 238]),
        ("#551AB14D", [85, 26, 177, 77]),
        ("#D1D5", [221, 17, 221, 85]),
        ("#3C4", [51, 204, 68, 255]),
        ("#B615FED3", [182, 21, 254, 211]),
        ("#FC7", [255, 204, 119, 255]),
        ("#4B10D2", [75, 16, 210, 255]),
        ("#2188EC", [33, 136, 236, 255]),
        ("#A68F5F9F", [166, 143, 95, 159]),
        ("#4670E4", [70, 112, 228, 255]),
        ("rgb(56.467,186.479,125.521)", [56, 186, 126, 255]),
        ("rgb(227.181,102.976,142.108)", [227, 103, 142, 255]),
        ("rgb(30.436,119.528,76.579)", [30, 120, 77, 255]),
        ("rgb(93.103,251.965,52.385)", [93, 252, 52, 255]),
        ("rgb(161.891,261.654,114.275)", [162, 255, 114, 255]),
        ("rgb(235.921,88.153,244.002)", [236, 88, 244, 255]),
        ("rgb(185.204,3.571,140.660,1.079)", [185, 4, 141, 255]),
        ("rgb(141.230,184.483,37.035)", [141, 184, 37, 255]),
        ("rgb(37.685,82.003,192.789,0.283)", [38, 82, 193, 72]),
        ("rgb(45.740,9.845,259.876)", [46, 10, 255, 255]),
        ("rgb(86.411,188.879,237.442,0.876)", [86, 189, 237, 223]),
        ("rgb(156.438,191.727,52.916)", [156, 192, 53, 255]),
        ("rgb(216.423,5.520,180.029,0.589)", [216, 6, 180, 150]),
        ("rgb(92.120,247.582,38.473)", [92, 248, 38, 255]),
        ("rgb(191.287,191.154,217.583)", [191, 191, 218, 255]),
        ("rgb(12.653,152.639,193.900)", [13, 153, 194, 255]),
        ("rgb(202.973,184.215,144.797)", [203, 184, 145, 255]),
        ("rgb(136.571,182.362,162.541,0.148)", [137, 182, 163, 38]),
        ("rgb(242.371,-9.883,94.380)", [242, 0, 94, 255]),
        ("rgb(225.423,48.220,245.090,0.771)", [225, 48, 245, 197]),
        ("rgb(120.844,198.795,84.888)", [121, 199, 85, 255]),
        ("rgb(164.768,213.433,79.101,0.592)", [165, 213, 79, 151]),
        ("rgb(38.678,179.795,181.240,0.668)", [39, 180, 181, 170]),
        ("rgb(20.568,-4.233,125.669)", [21, 0, 126, 255]),
        ("rgb(16.521,145.769,228.928,1.141)", [17, 146, 229, 255]),
        ("rgb(167.249,179.288,124.859,0.518)", [167, 179, 125, 132]),
        ("rgb(89.103,46.835,144.170)", [89, 47, 144, 255]),
        ("rgb(135.687,86.916,220.479,0.668)", [136, 87, 220, 170]),
        ("rgb(162.398,-6.010,110.044,0.753)", [162, 0, 110, 192]),
        ("rgb(232.790,116.598,58.135)", [233, 117, 58, 255]),
        ("rgb(151.480,198.087,129.953,0.205)", [151, 198, 130, 52]),
        ("rgb(220.157,183.680,73.321)", [220, 184, 73, 255]),
        ("rgb(182.469,204.897,82.469,0.901)", [182, 205, 82, 230]),
        ("rgb(4.167,34.557,42.727,0.701)", [4, 35, 43, 179]),
        ("rgb(43.038,100.728,14.607,1.052)", [43, 101, 15, 255]),
        ("rgb(0.045,150.822,2.053)", [0, 151, 2, 255]),
        ("rgb(252.789,220.105,226.842)", [253, 220, 227, 255]),
        ("rgb(158.071,262.551,21.134,1.191)", [158, 255, 21, 255]),
        ("rgb(233.762,23.326,169.395)", [234, 23, 169, 255]),
        ("rgb(231.402,104.070,-9.010,1.065)", [231, 104, 0, 255]),
        ("rgb(179.325,103.168,150.187,0.284)", [179, 103, 150, 72]),
        ("rgb(139.902,99.310,145.976)", [140, 99, 146, 255]),
        ("rgb(50.983,172.151,210.545,0.455)", [51, 172, 211, 116]),
        ("rgb(17.199,167.421,194.514,0.667)", [17, 167, 195, 170]),
        ("rgb(66.992,32.529,37.688,0.161)", [67, 33, 38, 41]),
        ("rgb(224.304,84.063,222.623)", [224, 84, 223, 255]),
        ("rgb(203.817,45.691,5.316)", [204, 46, 5, 255]),
        ("rgb(154.775,257.630,253.717)", [155, 255, 254, 255]),
        ("rgb(113.736,190.662,180.949)", [114, 191, 181, 255]),
        ("rgb(198.089,-9.253,145.769)", [198, 0, 146, 255]),
        ("rgb(36.705%,17.074%,105.740%,-0.093)", [94, 44, 255, 0]),
        ("rgb(36.517%,9.269%,20.384%,-0.136)", [93, 24, 52, 0]),
        ("rgb(43.466%,65.604%,55.038%)", [111, 167, 140, 255]),
        ("rgb(48.285%,63.684%,56.161%)", [123, 162, 143, 255]),
        ("rgb(-4.882%,-3.380%,43.553%)", [0, 0, 111, 255]),
        ("rgb(27.307%,75.448%,88.504%)", [70, 192, 226, 255]),
        ("rgb(69.694%,59.503%,75.063%)", [178, 152, 191, 255]),
        ("rgb(90.960%,12.457%,12.447%)", [232, 32, 32, 255]),
        ("rgb(-4.622%,36.627%,-8.178%)", [0, 93, 0, 255]),
        ("rgb(87.787%,20.447%,43.423%)", [224, 52, 111, 255]),
        ("rgb(67.308%,86.285%,72.392%,0.038)", [172, 220, 185, 10]),
        ("rgb(103.478%,75.442%,82.578%,0.746)", [255, 192, 211, 190]),
        ("rgb(94.011%,90.970%,79.718%)", [240, 232, 203, 255]),
        ("rgb(101.439%,74.849%,45.099%)", [255, 191, 115, 255]),
        ("rgb(89.327%,31.033%,44.547%)", [228, 79, 114, 255]),
        ("rgb(14.834%,42.672%,105.987%,0.244)", [38, 109, 255, 62]),
        ("rgb(21.958%,36.904%,78.661%)", [56, 94, 201, 255]),
        ("rgb(-6.690%,87.366%,71.478%)", [0, 223, 182, 255]),
        ("rgb(28.576%,39.953%,66.600%)", [73, 102, 170, 255]),
        ("rgb(40.806%,108.938%,47.153%,1.186)", [104, 255, 120, 255]),
        ("rgb(56.260%,70.797%,1.857%)", [143, 181, 5, 255]),
        ("rgb(83.108%,-8.247%,-6.553%,0.081)", [212, 0, 0, 21]),
        ("rgb(74.833%,49.474%,93.795%,0.274)", [191, 126, 239, 70]),
        ("rgb(68.953%,0.784%,100.538%,0.815)", [176, 2, 255, 208]),
        ("rgb(82.811%,4.286%,-7.748%)", [211, 11, 0, 255]),
        ("rgb(60.598%,108.140%,92.018%)", [155, 255, 235, 255]),
        ("rgb(43.708%,17.419%,-0.824%)", [111, 44, 0, 255]),
        ("rgb(25.794%,80.139%,104.639%)", [66, 204, 255, 255]),
        ("rgb(38.556%,11.224%,-1.615%)", [98, 29, 0, 255]),
        ("rgb(16.455%,48.941%,54.732%,0.187)", [42, 125, 140, 48]),
        ("rgb(80.390%,-9.653%,33.214%)", [205, 0, 85, 255]),
        ("rgb(79.032%,-1.482%,102.516%)", [202, 0, 255, 255]),
        ("rgb(84.366%,31.407%,87.727%)", [215, 80, 224, 255]),
        ("rgb(75.236%,101.526%,15.918%)", [192, 255, 41, 255]),
        ("rgb(41.238%,3.048%,1.219%)", [105, 8, 3, 255]),
        ("rgb(100.594%,5.613%,69.223%,0.190)", [255, 14, 177, 48]),
        ("rgb(50.523%,91.169%,-9.786%,-0.006)", [129, 232, 0, 0]),
        ("rgb(64.531%,35.250%,34.396%,0.566)", [165, 90, 88, 144]),
        ("rgb(29.348%,73.790%,37.770%)", [75, 188, 96, 255]),
        ("rgb(33.014%,25.582%,90.210%)", [84, 65, 230, 255]),
        ("rgb(-5.318%,-3.605%,13.564%)", [0, 0, 35, 255]),
        ("rgb(29.700%,52.430%,-9.889%)", [76, 134, 0, 255]),
        ("rgb(11.953%,5.255%,59.970%)", [30, 13, 153, 255]),
        ("rgb(76.719%,30.732%,61.515%,0.289)", [196, 78, 157, 74]),
        ("rgb(100.532%,96.866%,9.823%,0.475)", [255, 247, 25, 121]),
        ("rgb(25.194%,36.877%,67.434%,0.940)", [64, 94, 172, 240]),
        ("rgb(6.368%,90.828%,14.714%,0.304)", [16, 232, 38, 78]),
        ("rgb(90.081%,-4.819%,37.658%)", [230, 0, 96, 255]),
        ("rgb(-1.297%,9.539%,70.162%)", [0, 24, 179, 255]),
        ("rgb(47.324%,8.645%,-0.478%)", [121, 22, 0, 255]),
        ("hsl(0.069turn,21.307%,-3.478%,1.007)", [0, 0, 0, 255]),
        ("hsl(72.142,4.735%,-7.464%,1.042)", [0, 0, 0, 255]),
        ("hsl(0.890turn,49.391%,38.567%)", [147, 50, 114, 255]),
        ("hsl(3.845grad,68.172%,-6.573%)", [0, 0, 0, 255]),
        ("hsl(193.837,21.934%,21.649%)", [43, 62, 67, 255]),
        ("hsl(162.965deg,6.690%,44.810%)", [107, 122, 118, 255]),
        ("hsl(0.468turn,100.941%,37.582%)", [0, 192, 155, 255]),
        ("hsl(0.058turn,51.911%,48.034%,-0.122)", [186, 103, 59, 0]),
        ("hsl(120.939,66.051%,77.958%,0.145)", [162, 236, 163, 37]),
        ("hsl(72.452deg,63.319%,84.331%)", [230, 240, 190, 255]),
        ("hsl(155.120grad,106.379%,58.737%)", [45, 255, 113, 255]),
        ("hsl(5.240rad,-4.171%,32.487%)", [83, 83, 83, 255]),
        ("hsl(4.565rad,-3.467%,20.547%)", [52, 52, 52, 255]),
        ("hsl(295.291,7.475%,3.742%)", [10, 9, 10, 255]),
        ("hsl(4.287rad,96.686%,41.460%,1.012)", [23, 4, 208, 255]),
        ("hsl(0.283turn,95.539%,97.779%,1.064)", [247, 255, 244, 255]),
        ("hsl(2.638rad,37.279%,-9.931%)", [0, 0, 0, 255]),
        ("hsl(0.295turn,21.487%,35.668%,0.217)", [80, 110, 71, 55]),
        ("hsl(60.183deg,41.823%,22.086%)", [80, 80, 33, 255]),
        ("hsl(-0.021rad,64.948%,7.915%)", [33, 7, 8, 255]),
        ("hsl(121.677deg,15.914%,19.922%,-0.019)", [43, 59, 43, 0]),
        ("hsl(2.829rad,-9.457%,77.556%,-0.068)", [198, 198, 198, 0]),
        ("hsl(259.505grad,93.623%,67.416%)", [94, 111, 250, 255]),
        ("hsl(0.404rad,-4.398%,104.641%)", [255, 255, 255, 255]),
        ("hsl(0.840turn,76.343%,94.714%,0.063)", [252, 231, 251, 16]),
        ("hsl(49.836grad,83.982%,3.411%)", [16, 12, 1, 255]),
        ("hsl(0.018turn,107.944%,20.884%)", [107, 12, 0, 255]),
        ("hsl(0.375turn,22.837%,73.947%)", [173, 204, 181, 255]),
        ("hsl(331.324deg,84.224%,61.278%,0.830)", [239, 73, 153, 212]),
        ("hsl(2.062rad,60.636%,71.565%)", [141, 226, 139, 255]),
        ("hsl(91.718grad,48.490%,44.280%)", [127, 168, 58, 255]),
        (
            "hsl(255.829deg,62.751%,107.894%,-0.045)",
            [255, 255, 255, 0],
        ),
        ("hsl(98.567grad,-6.159%,27.281%)", [70, 70, 70, 255]),
        ("hsl(1.517rad,83.487%,29.247%)", [81, 137, 12, 255]),
        ("hsl(83.494deg,99.500%,61.584%)", [178, 255, 60, 255]),
        ("hsl(400.564grad,42.181%,-6.001%,1.145)", [0, 0, 0, 255]),
        ("hsl(334.198deg,80.826%,90.951%,0.042)", [251, 213, 229, 11]),
        ("hsl(154.176,15.036%,62.757%,0.815)", [146, 174, 162, 208]),
        ("hsl(0.029rad,57.145%,72.419%)", [225, 147, 144, 255]),
        ("hsl(266.629,25.394%,-1.463%,0.584)", [0, 0, 0, 149]),
        ("hsl(5.873rad,105.561%,14.063%)", [72, 0, 28, 255]),
        ("hsl(5.731rad,38.296%,105.210%,0.659)", [255, 255, 255, 168]),
        ("hsl(327.273,65.108%,71.932%)", [230, 137, 188, 255]),
        ("hsl(89.405,36.983%,94.707%)", [242, 246, 237, 255]),
        ("hsl(0.925turn,78.035%,97.489%)", [254, 244, 248, 255]),
        ("hsl(0.000turn,56.799%,105.320%)", [255, 255, 255, 255]),
        ("hsl(2.276rad,107.756%,74.291%,0.290)", [124, 255, 147, 74]),
        ("hsl(215.619,25.313%,100.025%,-0.116)", [255, 255, 255, 0]),
        ("hsl(41.239,30.040%,7.348%)", [24, 21, 13, 255]),
        ("hsl(5.794rad,109.895%,71.423%)", [255, 109, 177, 255]),
    ];
    for (s, expected) in test_data {
        let rgba = csscolorparser::parse(s).unwrap().to_rgba8();
        assert_eq!(expected, rgba);
    }
}