]> git.sur5r.net Git - i3/i3/blob - testcases/t/10-dock.t
Fix unaligned memory access on sparc (Thanks David Coppa)
[i3/i3] / testcases / t / 10-dock.t
1 #!perl
2 # vim:ts=4:sw=4:expandtab
3
4 use Test::More tests => 2;
5 use Test::Deep;
6 use X11::XCB qw(:all);
7 use Data::Dumper;
8 use Time::HiRes qw(sleep);
9 use FindBin;
10 use lib "$FindBin::Bin/lib";
11 use i3test;
12 use List::Util qw(first);
13
14 BEGIN {
15     use_ok('X11::XCB::Connection') or BAIL_OUT('Cannot load X11::XCB::Connection');
16 }
17
18 my $x = X11::XCB::Connection->new;
19
20 #####################################################################
21 # Create a dock window and see if it gets managed
22 #####################################################################
23
24 my $screens = $x->screens;
25
26 # Get the primary screen
27 my $primary = first { $_->primary } @{$screens};
28
29 # TODO: focus the primary screen before
30
31 my $window = $x->root->create_child(
32     class => WINDOW_CLASS_INPUT_OUTPUT,
33     rect => [ 0, 0, 30, 30],
34     background_color => '#FF0000',
35     type => $x->atom(name => '_NET_WM_WINDOW_TYPE_DOCK'),
36 );
37
38 $window->map;
39
40 sleep 0.25;
41
42 my $rect = $window->rect;
43 is($rect->width, $primary->rect->width, 'dock client is as wide as the screen');
44
45 my $fwindow = $x->root->create_child(
46     class => WINDOW_CLASS_INPUT_OUTPUT,
47     rect => [ 0, 0, 30, 30],
48     background_color => '#FF0000',
49     type => $x->atom(name => '_NET_WM_WINDOW_TYPE_DOCK'),
50 );
51
52 $fwindow->transient_for($window);
53 $fwindow->map;
54
55 sleep 0.25;
56
57
58 diag( "Testing i3, Perl $], $^X" );