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
|
use Term::Table;
use Term::Table::Util;
BEGIN {
if (eval { require Test2::Tools::Tiny }) {
print "# Using Test2::Tools::Tiny\n";
Test2::Tools::Tiny->import();
}
elsif (eval { require Test::More; Test::More->can('done_testing') ? 1 : 0 }) {
print "# Using Test::More " . Test::More->VERSION . "\n";
Test::More->import();
}
else {
print "1..0 # SKIP Neither Test2::Tools::Tiny nor a sufficient Test::More is installed\n";
exit(0);
}
}
use utf8;
use strict;
use warnings;
use Term::Table::CellStack;
sub table { Term::Table->new(@_)->render }
my @table = table(
max_width => 40,
header => ['a', 'b', 'c', 'd'],
rows => [
[qw/aaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbb ccccccccccccccccccccccc ddddddddddddddddddddddddddddd/],
[
Term::Table::CellStack->new(cells => [
Term::Table::Cell->new(border_left => '>', border_right => '<', value => 'aaa'),
Term::Table::Cell->new(value => 'bbb'),
Term::Table::Cell->new(border_left => '>', border_right => '<', value => 'ccc'),
]),
Term::Table::CellStack->new(cells => [
Term::Table::Cell->new(border_left => '>', border_right => '<', value => 'aaaaaaaaaaaaaaaaaaaaa'),
Term::Table::Cell->new(value => 'bbbbbbbbbbbbbbbbbbbb'),
Term::Table::Cell->new(border_left => '>', border_right => '<', value => 'ccccccccccccccccccccc'),
]),
],
[qw/AAAAAAAAAAAAAAAAAAAAAAAAAA BBBBBBBBBBBBBBBBBBBBB CCCCCCCCCCCCCCCCCCCCCCC DDDDDDDDDDDDDDDDDDDDDDDDDDDDD/],
],
);
is_deeply(
\@table,
[
'+-------+-------+-------+-------+',
'| a | b | c | d |',
'+-------+-------+-------+-------+',
'| aaaaa | bbbbb | ccccc | ddddd |',
'| aaaaa | bbbbb | ccccc | ddddd |',
'| aaaaa | bbbbb | ccccc | ddddd |',
'| aaaaa | bbbbb | ccccc | ddddd |',
'| aaaaa | b | ccc | ddddd |',
'| a | | | dddd |',
'| | | | |',
'|> aaa <|> aaa <| | |',
'| bbb |> aaa <| | |',
'|> ccc <|> aaa <| | |',
'| |> aaa <| | |',
'| |> aaa <| | |',
'| |> aaa <| | |',
'| |> aaa <| | |',
'| | bbbbb | | |',
'| | bbbbb | | |',
'| | bbbbb | | |',
'| | bbbbb | | |',
'| |> ccc <| | |',
'| |> ccc <| | |',
'| |> ccc <| | |',
'| |> ccc <| | |',
'| |> ccc <| | |',
'| |> ccc <| | |',
'| |> ccc <| | |',
'| | | | |',
'| AAAAA | BBBBB | CCCCC | DDDDD |',
'| AAAAA | BBBBB | CCCCC | DDDDD |',
'| AAAAA | BBBBB | CCCCC | DDDDD |',
'| AAAAA | BBBBB | CCCCC | DDDDD |',
'| AAAAA | B | CCC | DDDDD |',
'| A | | | DDDD |',
'+-------+-------+-------+-------+',
],
"Basic table, small width"
);
done_testing;
|