File: 11-labels-horizontal.t

package info (click to toggle)
libtickit-widget-tabbed-perl 0.028-1
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 260 kB
  • sloc: perl: 1,851; makefile: 2
file content (70 lines) | stat: -rw-r--r-- 1,742 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
#!/usr/bin/perl

use v5.26;
use warnings;

use Test::More;

use Tickit::Test;

use Tickit::Widget::Static;
use Tickit::Widget::Tabbed;

my $win = mk_window;

my $widget = Tickit::Widget::Tabbed->new( tab_position => "top" );

my $tab = $widget->add_tab( Tickit::Widget::Static->new( text => "Widget" ), label => "tab" );

$widget->set_window( $win );

flush_tickit;

is_display( [ [TEXT("[",fg=>7,bg=>4), TEXT("tab",fg=>14,bg=>4), TEXT("]",fg=>7,bg=>4), TEXT("",bg=>4)],
              [TEXT("Widget")] ],
            'Display initially' );

$tab->set_label( "newlabel" );

flush_tickit;

is_display( [ [TEXT("[",fg=>7,bg=>4), TEXT("newlabel",fg=>14,bg=>4), TEXT("]",fg=>7,bg=>4), TEXT("",bg=>4)],
              [TEXT("Widget")] ],
            'Display after ->set_label' );

# Narrow rendering

$widget->set_window( undef );

my $subwin = $win->make_sub( 0, 0, 10, 30 );

$widget->add_tab( Tickit::Widget::Static->new( text => "Widget $_" ), label => "tab$_" ) for 1..10;

# Should be too narrow now

$widget->set_window( $subwin );

flush_tickit;

is_display( [ [TEXT("[",fg=>7,bg=>4),
               TEXT("newlabel",fg=>14,bg=>4),
               TEXT("]",fg=>7,bg=>4), 
               TEXT("tab1 tab2 tab3 ta",fg=>7,bg=>4),
               TEXT("..>",fg=>6,bg=>4),
               TEXT("",bg=>4)],
              [TEXT("Widget")] ],
            'Display with narrow truncation' );

$widget->activate_tab( 7 );

flush_tickit;

is_display( [ [TEXT("<..",fg=>6,bg=>4),
               TEXT("5 tab6[",fg=>7,bg=>4),
               TEXT("tab7",fg=>14,bg=>4), 
               TEXT("]tab8 tab9 tab10",fg=>7,bg=>4),
               TEXT("",bg=>4)],
              [TEXT("Widget 7")] ],
            'Display scrolls ribbon to active tab' );

done_testing;