]> git.sur5r.net Git - i3/i3/blobdiff - testcases/t/173-regress-focus-assign.t
Merge branch 'master' into next
[i3/i3] / testcases / t / 173-regress-focus-assign.t
index cf3385ccb303b7218cf07efceeee26f919e28884..91d367d1f000fb9b0db99c4d74117300a39e1b85 100644 (file)
@@ -1,11 +1,23 @@
 #!perl
 # vim:ts=4:sw=4:expandtab
-# !NO_I3_INSTANCE! will prevent complete-run.pl from starting i3
+#
+# Please read the following documents before working on tests:
+# • http://build.i3wm.org/docs/testsuite.html
+#   (or docs/testsuite)
+#
+# • http://build.i3wm.org/docs/lib-i3test.html
+#   (alternatively: perldoc ./testcases/lib/i3test.pm)
+#
+# • http://build.i3wm.org/docs/ipc.html
+#   (or docs/ipc)
+#
+# • http://onyxneon.com/books/modern_perl/modern_perl_a4.pdf
+#   (unless you are already familiar with Perl)
 #
 # Regression: Checks if focus is stolen when a window is managed which is
 # assigned to an invisible workspace
 #
-use i3test;
+use i3test i3_autostart => 0;
 use X11::XCB qw(PROP_MODE_REPLACE);
 
 # TODO: move to X11::XCB
@@ -32,10 +44,15 @@ sub open_special {
     my $wm_class = delete($args{wm_class}) || 'special';
     $args{name} //= 'special window';
 
-    return open_window(
+    # We use dont_map because i3 will not map the window on the current
+    # workspace. Thus, open_window would time out in wait_for_map (2 seconds).
+    my $window = open_window(
         %args,
         before_map => sub { set_wm_class($_->id, $wm_class, $wm_class) },
+        dont_map => 1,
     );
+    $window->map;
+    return $window;
 }
 
 #####################################################################