File: 04-color.t

package info (click to toggle)
libterm-extendedcolor-perl 0.504-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 224 kB
  • sloc: perl: 1,036; makefile: 2
file content (79 lines) | stat: -rw-r--r-- 2,312 bytes parent folder | download | duplicates (2)
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
#!/usr/bin/perl
use strict;
use warnings;
use Test::More tests => 24;
use Term::ExtendedColor ':attributes';


is(      bold(12), "\e[1m12\e[m", 'bold()');
is(    italic(12), "\e[3m12\e[m", 'italic()');
is(   inverse(12), "\e[7m12\e[m", 'inverse()');
is( underline(12), "\e[4m12\e[m", 'underline()');


is(fg(0, 0), "\e[38;5;0m0\e[m", 'fg(0, 0) OK');

my $green_fg = fg('green1', 'foo');
is($green_fg, "\e[38;5;156mfoo\e[m", 'FG - green1 - autoreset OFF');

my $green_bg = bg('green1', 'foo');
is($green_bg, "\e[48;5;156mfoo\e[m", 'BG - green1 - autoreset OFF');

my $bold_fg = fg('bold', 'foo');
is($bold_fg, "\e[1mfoo\e[m", 'FG - bold - autoreset OFF');

my $bold_bg = bg('bold', 'foo');
is($bold_bg, "\e[1mfoo\e[m", 'BG - bold - autoreset OFF');

my $reset = clear();
is($reset, "\e[m", 'reset to defaults');

my $bold_green = fg('bold', fg('green1'));
is($bold_green, "\e[1m\e[38;5;156m", 'BOLD GREEN foreground');

my @colors = fg('blue4', ['foo', 'bar']);

is(2, scalar(@colors), "fg(['foo', 'bar']) returns an array");
my $str = join("\n", @colors);
is(
  $str,
  "\e[38;5;039mfoo\e[m\n\e[38;5;039mbar\e[m",
  "fg('blue4', ['foo', 'bar']) successful"
);

Term::ExtendedColor::autoreset(0);

my $red_fg = fg('red1', 'foo');
is($red_fg, "\e[38;5;196mfoo", 'FG - red - autoreset ON');

my $red_bg = bg('red1', 'foo');
is($red_bg, "\e[48;5;196mfoo", 'BG - red - autoreset ON');

my $no_attr_str = fg('foo');
is($no_attr_str, 'foo', "fg('foo') returns 'foo'");

my $fg_no_arg = fg();
is($fg_no_arg, "\e[39m", 'fg() sets FOREGROUND to a default value');

my $bg_no_arg = bg();
is($bg_no_arg, "\e[49m", 'bg() sets BACKGROUND to a default value');

Term::ExtendedColor::autoreset(1);

my $raw_esc = fg('01;35', 'raw');
is($raw_esc, "\e[01;35mraw\e[m", 'raw esc OK');

my $raw_esc2 = bg('35;04', 'raw');
is($raw_esc2, "\e[35;04mraw\e[m", 'raw esc OK');

my $raw_esc3 = bg('35;4;1;3;7', 'attributes');
is($raw_esc3, "\e[35;4;1;3;7mattributes\e[m", 'raw esc ATTRIBUTES OK');

my $cursor_mv = fg('\e[20Bfoo', 'move cursor');
is($cursor_mv, 'move cursor', 'no cursor movement OK');

my $invert_bg = fg('\e[?5h', 'invert bg');
is($invert_bg, 'invert bg', 'no invert bg OK');

my $modify_index = fg('\e]4;197;rgb:ff/00/00\e\\', 'change index color');
is($modify_index, 'change index color', 'no change index color OK');