]> git.sur5r.net Git - i3/i3/commitdiff
Change testcases to work with the released version of X11::XCB
authorMichael Stapelberg <michael@stapelberg.de>
Mon, 26 Oct 2009 19:04:37 +0000 (20:04 +0100)
committerMichael Stapelberg <michael@stapelberg.de>
Mon, 26 Oct 2009 19:04:37 +0000 (20:04 +0100)
13 files changed:
testcases/Makefile
testcases/t/01-tile.t
testcases/t/02-fullscreen.t
testcases/t/03-unmanaged.t
testcases/t/04-floating.t
testcases/t/05-ipc.t
testcases/t/06-focus.t
testcases/t/07-move.t
testcases/t/08-focus-stack.t
testcases/t/09-stacking.t
testcases/t/10-dock.t
testcases/t/11-goto.t
testcases/t/lib/i3test.pm

index 678312a9562440f50f5d2d26fd5056c663ee1b30..d37450ab320bbbd445cfa00dd942bc9eed0ad239 100644 (file)
@@ -1,4 +1,4 @@
 test:
-       PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(1, '/home/michael//X11-XCB/lib/', '/home/michael//X11-XCB/blib/lib', '/home/michael//X11-XCB/blib/arch', '/home/michael/X11-XCB/X11-XCB-XS/lib', '/home/michael/X11-XCB/X11-XCB-XS/blib/arch')" t/11-*.t
+       PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(1)" t/*.t
 
 all: test
index c80c5e15f875b3319feb9d3b295022e81b948baa..a5aa143d0175f50989cca60a3252296896879a2b 100644 (file)
@@ -10,11 +10,11 @@ BEGIN {
        use_ok('X11::XCB::Window');
 }
 
-X11::XCB::Connection->connect(':0');
+my $x = X11::XCB::Connection->new;
 
 my $original_rect = X11::XCB::Rect->new(x => 0, y => 0, width => 30, height => 30);
 
-my $window = X11::XCB::Window->new(
+my $window = $x->root->create_child(
                 class => WINDOW_CLASS_INPUT_OUTPUT,
                rect => $original_rect,
                background_color => '#C0C0C0',
@@ -24,7 +24,6 @@ isa_ok($window, 'X11::XCB::Window');
 
 is_deeply($window->rect, $original_rect, "rect unmodified before mapping");
 
-$window->create;
 $window->map;
 
 sleep(0.25);
index b4ebd26bb376873384525a175b683358a8dda855..40a7d983b63c2a6793adf1b96f9c794756c29766 100644 (file)
@@ -13,11 +13,11 @@ BEGIN {
        use_ok('X11::XCB::Window');
 }
 
-X11::XCB::Connection->connect(':0');
+my $x = X11::XCB::Connection->new;
 
 my $original_rect = X11::XCB::Rect->new(x => 0, y => 0, width => 30, height => 30);
 
-my $window = X11::XCB::Window->new(
+my $window = $x->root->create_child(
                 class => WINDOW_CLASS_INPUT_OUTPUT,
                rect => $original_rect,
                background_color => '#C0C0C0',
@@ -27,7 +27,6 @@ isa_ok($window, 'X11::XCB::Window');
 
 is_deeply($window->rect, $original_rect, "rect unmodified before mapping");
 
-$window->create;
 $window->map;
 
 sleep(0.25);
@@ -47,7 +46,7 @@ ok(!eq_deeply($new_rect, $original_rect), "Window got repositioned after fullscr
 
 $window->unmap;
 
-$window = X11::XCB::Window->new(
+$window = $x->root->create_child(
        class => WINDOW_CLASS_INPUT_OUTPUT,
        rect => $original_rect,
        background_color => 61440,
@@ -55,7 +54,6 @@ $window = X11::XCB::Window->new(
 
 is_deeply($window->rect, $original_rect, "rect unmodified before mapping");
 
-$window->create;
 $window->fullscreen(1);
 $window->map;
 
index 482c7645a9ead325a39663ddfe305f2c7be1a91d..3cd9833a4fa1afdd359468b51683f6005a5ef4a7 100644 (file)
@@ -10,11 +10,11 @@ BEGIN {
     use_ok('X11::XCB::Window');
 }
 
-X11::XCB::Connection->connect(':0');
+my $x = X11::XCB::Connection->new;
 
 my $original_rect = X11::XCB::Rect->new(x => 0, y => 0, width => 30, height => 30);
 
-my $window = X11::XCB::Window->new(
+my $window = $x->root->create_child(
     class => WINDOW_CLASS_INPUT_OUTPUT,
     rect => $original_rect,
     override_redirect => 1,
@@ -25,7 +25,6 @@ isa_ok($window, 'X11::XCB::Window');
 
 is_deeply($window->rect, $original_rect, "rect unmodified before mapping");
 
-$window->create;
 $window->map;
 
 my $new_rect = $window->rect;
index b06512418e36f72fa476ba6b6b496081fa764267..9049b9dc82699fcea7f6273e14cc9f36914e7b72 100644 (file)
@@ -14,19 +14,19 @@ BEGIN {
     use_ok('X11::XCB::Window');
 }
 
-X11::XCB::Connection->connect(':0');
+my $x = X11::XCB::Connection->new;
 
 # Create a floating window which is smaller than the minimum enforced size of i3
-my $window = X11::XCB::Window->new(
+my $window = $x->root->create_child(
     class => WINDOW_CLASS_INPUT_OUTPUT,
     rect => [ 0, 0, 30, 30],
     background_color => '#C0C0C0',
-    type => 'utility',
+    # replace the type with 'utility' as soon as the coercion works again in X11::XCB
+    type => $x->atom(name => '_NET_WM_WINDOW_TYPE_UTILITY'),
 );
 
 isa_ok($window, 'X11::XCB::Window');
 
-$window->create;
 $window->map;
 
 sleep(0.25);
@@ -41,16 +41,15 @@ ok($absolute->{x} != 0 && $absolute->{y} != 0, 'i3 did not map it to (0x0)');
 
 $window->unmap;
 
-$window = X11::XCB::Window->new(
+$window = $x->root->create_child(
     class => WINDOW_CLASS_INPUT_OUTPUT,
     rect => [ 1, 1, 80, 90],
     background_color => '#C0C0C0',
-    type => 'utility',
+    type => $x->atom(name => '_NET_WM_WINDOW_TYPE_UTILITY'),
 );
 
 isa_ok($window, 'X11::XCB::Window');
 
-$window->create;
 $window->map;
 
 sleep(0.25);
index b34ba4f2d4d62d7886ea8bb33e7876704dbb29ae..ac52911af19d8fb107e62312b3e4b28b77b5ab4c 100644 (file)
@@ -15,7 +15,7 @@ BEGIN {
     use_ok('X11::XCB::Connection') or BAIL_OUT('Cannot load X11::XCB::Connection');
 }
 
-X11::XCB::Connection->connect(':0');
+my $x = X11::XCB::Connection->new;
 
 my $sock = IO::Socket::UNIX->new(Peer => '/tmp/i3-ipc.sock');
 
@@ -32,12 +32,12 @@ $sock->write(i3test::format_ipc_command("1"));
 sleep(0.25);
 
 # Create a window so we can get a focus different from NULL
-my $window = i3test::open_standard_window;
+my $window = i3test::open_standard_window($x);
 diag("window->id = " . $window->id);
 
 sleep(0.25);
 
-my $focus = X11::XCB::Connection->input_focus;
+my $focus = $x->input_focus;
 diag("old focus = $focus");
 
 # Switch to the nineth workspace
@@ -45,7 +45,7 @@ $sock->write(i3test::format_ipc_command("9"));
 
 sleep(0.25);
 
-my $new_focus = X11::XCB::Connection->input_focus;
+my $new_focus = $x->input_focus;
 isnt($focus, $new_focus, "Focus changed");
 
 diag( "Testing i3, Perl $], $^X" );
index f34095ca327013eec619bb6dd3456fefb9c62047..efdf574908bf3f0c0a493e558454e08867bcf35c 100644 (file)
@@ -18,7 +18,7 @@ BEGIN {
     use_ok('X11::XCB::Connection') or BAIL_OUT('Cannot load X11::XCB::Connection');
 }
 
-X11::XCB::Connection->connect(':0');
+my $x = X11::XCB::Connection->new;
 
 my $sock = IO::Socket::UNIX->new(Peer => '/tmp/i3-ipc.sock');
 isa_ok($sock, 'IO::Socket::UNIX');
@@ -36,9 +36,9 @@ sleep(0.25);
 $sock->write(i3test::format_ipc_command("d"));
 sleep(0.25);
 
-my $top = i3test::open_standard_window;
-my $mid = i3test::open_standard_window;
-my $bottom = i3test::open_standard_window;
+my $top = i3test::open_standard_window($x);
+my $mid = i3test::open_standard_window($x);
+my $bottom = i3test::open_standard_window($x);
 sleep(0.25);
 
 diag("top id = " . $top->id);
@@ -54,10 +54,10 @@ sub focus_after {
 
     $sock->write(i3test::format_ipc_command($msg));
     sleep(0.5);
-    return X11::XCB::Connection->input_focus;
+    return $x->input_focus;
 }
 
-$focus = X11::XCB::Connection->input_focus;
+$focus = $x->input_focus;
 is($focus, $bottom->id, "Latest window focused");
 
 $focus = focus_after("k");
index a4f9f4241ffd83a954960c28cd1e3293a6a21752..10cb9830d611eac1a4acd33211806085f66a0f43 100644 (file)
@@ -18,7 +18,7 @@ BEGIN {
     use_ok('X11::XCB::Connection') or BAIL_OUT('Cannot load X11::XCB::Connection');
 }
 
-X11::XCB::Connection->connect(':0');
+my $x = X11::XCB::Connection->new;
 
 my $sock = IO::Socket::UNIX->new(Peer => '/tmp/i3-ipc.sock');
 isa_ok($sock, 'IO::Socket::UNIX');
@@ -32,11 +32,11 @@ sleep(0.25);
 # Create two windows and make sure focus switching works
 #####################################################################
 
-my $top = i3test::open_standard_window;
+my $top = i3test::open_standard_window($x);
 sleep(0.25);
-my $mid = i3test::open_standard_window;
+my $mid = i3test::open_standard_window($x);
 sleep(0.25);
-my $bottom = i3test::open_standard_window;
+my $bottom = i3test::open_standard_window($x);
 sleep(0.25);
 
 diag("top id = " . $top->id);
@@ -52,10 +52,10 @@ sub focus_after {
 
     $sock->write(i3test::format_ipc_command($msg));
     sleep(0.5);
-    return X11::XCB::Connection->input_focus;
+    return $x->input_focus;
 }
 
-$focus = X11::XCB::Connection->input_focus;
+$focus = $x->input_focus;
 is($focus, $bottom->id, "Latest window focused");
 
 $focus = focus_after("ml");
index d88239dfdfb86029a4f20f8c5bcc938f62eec89a..370369d8697bae3663cadab4addd3ccde8a6c4a9 100644 (file)
@@ -17,7 +17,7 @@ BEGIN {
     use_ok('X11::XCB::Window') or BAIL_OUT('Could not load X11::XCB::Window');
 }
 
-X11::XCB::Connection->connect(':0');
+my $x = X11::XCB::Connection->new;
 
 my $sock = IO::Socket::UNIX->new(Peer => '/tmp/i3-ipc.sock');
 isa_ok($sock, 'IO::Socket::UNIX');
@@ -27,37 +27,35 @@ $sock->write(i3test::format_ipc_command("9"));
 
 sleep(0.25);
 
-
-my $tiled_left = i3test::open_standard_window;
-my $tiled_right = i3test::open_standard_window;
+my $tiled_left = i3test::open_standard_window($x);
+my $tiled_right = i3test::open_standard_window($x);
 
 sleep(0.25);
 
 $sock->write(i3test::format_ipc_command("ml"));
 
 # Get input focus before creating the floating window
-my $focus = X11::XCB::Connection->input_focus;
+my $focus = $x->input_focus;
 
 # Create a floating window which is smaller than the minimum enforced size of i3
-my $window = X11::XCB::Window->new(
+my $window = $x->root->create_child(
     class => WINDOW_CLASS_INPUT_OUTPUT,
     rect => [ 1, 1, 30, 30],
     background_color => '#C0C0C0',
-    type => 'utility',
+    type => $x->atom(name => '_NET_WM_WINDOW_TYPE_UTILITY'),
 );
 
 isa_ok($window, 'X11::XCB::Window');
 
-$window->create;
 $window->map;
 
 sleep(0.25);
-is(X11::XCB::Connection->input_focus, $window->id, 'floating window focused');
+is($x->input_focus, $window->id, 'floating window focused');
 
 $window->unmap;
 
 sleep(0.25);
 
-is(X11::XCB::Connection->input_focus, $focus, 'Focus correctly restored');
+is($x->input_focus, $focus, 'Focus correctly restored');
 
 diag( "Testing i3, Perl $], $^X" );
index 083961fb22c5e93a26a651e9f1a03982c9966939..8f40047e324aad71008ab65ef3368f32df070b67 100644 (file)
@@ -18,7 +18,7 @@ BEGIN {
     use_ok('X11::XCB::Connection') or BAIL_OUT('Cannot load X11::XCB::Connection');
 }
 
-X11::XCB::Connection->connect(':0');
+my $x = X11::XCB::Connection->new;
 
 my $sock = IO::Socket::UNIX->new(Peer => '/tmp/i3-ipc.sock');
 isa_ok($sock, 'IO::Socket::UNIX');
@@ -32,11 +32,11 @@ sleep(0.25);
 # Create two windows and make sure focus switching works
 #####################################################################
 
-my $top = i3test::open_standard_window;
+my $top = i3test::open_standard_window($x);
 sleep(0.25);
-my $mid = i3test::open_standard_window;
+my $mid = i3test::open_standard_window($x);
 sleep(0.25);
-my $bottom = i3test::open_standard_window;
+my $bottom = i3test::open_standard_window($x);
 sleep(0.25);
 
 diag("top id = " . $top->id);
@@ -52,10 +52,10 @@ sub focus_after {
 
     $sock->write(i3test::format_ipc_command($msg));
     sleep(0.25);
-    return X11::XCB::Connection->input_focus;
+    return $x->input_focus;
 }
 
-$focus = X11::XCB::Connection->input_focus;
+$focus = $x->input_focus;
 is($focus, $bottom->id, "Latest window focused");
 
 $focus = focus_after("s");
@@ -87,7 +87,7 @@ is($focus, $top->id, "Top window still focused (focus after moving)");
 $focus = focus_after("h");
 is($focus, $bottom->id, "Bottom window focused (focus after moving)");
 
-my $new = i3test::open_standard_window;
+my $new = i3test::open_standard_window($x);
 sleep(0.25);
 
 # By now, we have this layout:
index a3824fb9139a9f86799b0c69d357fa8b7ebf04d1..97ac5f418c06c3e9bfc53ca242a44d0bdbb46035 100644 (file)
@@ -16,27 +16,26 @@ BEGIN {
     use_ok('X11::XCB::Connection') or BAIL_OUT('Cannot load X11::XCB::Connection');
 }
 
-X11::XCB::Connection->connect(':0');
+my $x = X11::XCB::Connection->new;
 
 #####################################################################
 # Create a dock window and see if it gets managed
 #####################################################################
 
-my $screens = X11::XCB::Connection->screens;
+my $screens = $x->screens;
 
 # Get the primary screen
 my $primary = first { $_->primary } @{$screens};
 
 # TODO: focus the primary screen before
 
-my $window = X11::XCB::Window->new(
+my $window = $x->root->create_child(
     class => WINDOW_CLASS_INPUT_OUTPUT,
     rect => [ 0, 0, 30, 30],
     background_color => '#FF0000',
-    type => 'dock',
+    type => $x->atom(name => '_NET_WM_WINDOW_TYPE_DOCK'),
 );
 
-$window->create;
 $window->map;
 
 sleep 0.25;
index b08509f878cb82d8f91ac54ba474f2b6c2f816a6..476759036e95d95787c672f979057018ae306410 100644 (file)
@@ -19,7 +19,7 @@ BEGIN {
     use_ok('X11::XCB::Connection') or BAIL_OUT('Cannot load X11::XCB::Connection');
 }
 
-X11::XCB::Connection->connect(':0');
+my $x = X11::XCB::Connection->new;
 
 my $sock = IO::Socket::UNIX->new(Peer => '/tmp/i3-ipc.sock');
 isa_ok($sock, 'IO::Socket::UNIX');
@@ -33,11 +33,11 @@ sleep(0.25);
 # Create two windows and make sure focus switching works
 #####################################################################
 
-my $top = i3test::open_standard_window;
+my $top = i3test::open_standard_window($x);
 sleep(0.25);
-my $mid = i3test::open_standard_window;
+my $mid = i3test::open_standard_window($x);
 sleep(0.25);
-my $bottom = i3test::open_standard_window;
+my $bottom = i3test::open_standard_window($x);
 sleep(0.25);
 
 diag("top id = " . $top->id);
@@ -53,10 +53,10 @@ sub focus_after {
 
     $sock->write(i3test::format_ipc_command($msg));
     sleep(0.5);
-    return X11::XCB::Connection->input_focus;
+    return $x->input_focus;
 }
 
-$focus = X11::XCB::Connection->input_focus;
+$focus = $x->input_focus;
 is($focus, $bottom->id, "Latest window focused");
 
 $focus = focus_after("ml");
index 8ca1cee496c60a154fc02bc3c5b28da660706e05..a60fd6d238614c980d31954ff85b343d68de1fba 100644 (file)
@@ -13,15 +13,14 @@ BEGIN {
 }
 
 sub open_standard_window {
-    my $original_rect = X11::XCB::Rect->new(x => 0, y => 0, width => 30, height => 30);
+    my ($x) = @_;
 
-    my $window = X11::XCB::Window->new(
+    my $window = $x->root->create_child(
         class => WINDOW_CLASS_INPUT_OUTPUT,
-        rect => $original_rect,
+        rect => [ 0, 0, 30, 30 ],
         background_color => '#C0C0C0',
     );
 
-    $window->create;
     $window->name('Window ' . counter_window());
     $window->map;