-
Notifications
You must be signed in to change notification settings - Fork 70
/
html_colors.t
executable file
·51 lines (46 loc) · 1.42 KB
/
html_colors.t
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
#!/usr/bin/perl -w -T
use strict;
use lib '.'; use lib 't';
use SATest; sa_t_init("html_colors");
use Test::More tests => 28;
use Mail::SpamAssassin;
use Mail::SpamAssassin::HTML;
sub try {
my ($data, $want) = @_;
my $rgb = Mail::SpamAssassin::HTML::name_to_rgb($data);
if ($want ne $rgb) {
print "color mismatch: $data -> $rgb but wanted $want\n";
return 0;
}
return 1;
}
#Tests were based on Flex Hex: John Graham-Cumming, http://www.jgc.org/pdf/lisa2004.pdf until 2012-03-08
# SEE BUG 6760
ok(try('black', '#000000'));
ok(try('white', '#ffffff'));
ok(try('peachpuff', '#ffdab9'));
ok(try('#abcdef', '#abcdef'));
ok(try('123456', 'invalid'));
ok(try(' peachpuff', '#ffdab9'));
ok(try('#peachpuff', 'invalid'));
ok(try('#0f0', '#00ff00'));
ok(try('0f0f', 'invalid'));
ok(try('#1234567890abcde1234567890abcde', '#123456'));
ok(try('6db6ec49efd278cd0bc92d1e5e072d68', 'invalid'));
ok(try('#f', '#ff0000'));
ok(try('zft', 'invalid'));
ok(try('#789', '#778899'));
ok(try('#zftygn', 'invalid'));
ok(try('zqbttv', 'invalid'));
ok(try('fffffff', 'invalid'));
ok(try('fffff39', 'invalid'));
ok(try('fffffg', 'invalid'));
ok(try('fffff', 'invalid'));
ok(try('fxfefu', 'invalid'));
ok(try('fafufb', 'invalid'));
ok(try('fofcff', 'invalid'));
ok(try('#black', 'invalid'));
ok(try('rgb(100%,100%,100%)', '#ffffff'));
ok(try('rgb(100,100,100)', '#646464'));
ok(try('rgb(33%,33%,33%)', '#545454'));
ok(try('rgb(255,100,100)', '#ff6464'));