Commit Graph

323 Commits

Author SHA1 Message Date
Michael Stapelberg
27dadb4ad9 testcases/makefile: add modeline, add testsuite-* and latest to 'clean' target 2011-10-10 21:56:43 +01:00
Michael Stapelberg
71a3da1ef3 t/175-startup-notification: don’t wait for i3 mapping the window
It is on a different workspace and will therefore not get mapped.
Syncing is enough.
2011-10-10 16:00:34 +01:00
Michael Stapelberg
6ac098a45e support _NET_STARTUP_ID on the client leader window
(necessary for GIMP, geeqie, …)
2011-10-10 15:54:17 +01:00
Michael Stapelberg
7750382b89 test: set the _NET_STARTUP_ID before mapping the window 2011-10-10 15:54:17 +01:00
Michael Stapelberg
198f16ece9 add testcase for the startup notification protocol 2011-10-10 15:54:17 +01:00
Maik Fischer
19b13a0af5 testcases: add Makefile.PL to automatically install deps via CPAN 2011-10-08 20:58:37 +01:00
Michael Stapelberg
ae1ab9eb27 tests: rename files (00x-*.t is basic stuff, >=100-*.t are tests using IPC) 2011-10-08 14:38:50 +01:00
Michael Stapelberg
c48a092e24 testsuite: delete obsolete makefile 2011-10-08 14:30:47 +01:00
Michael Stapelberg
1056ecc885 complete-run: eliminate dependency on EV 2011-10-05 23:52:19 +01:00
Michael Stapelberg
27a38a3917 complete-run: explicitly state why we need to overwrite SIGCHLD 2011-10-05 23:29:58 +01:00
Michael Stapelberg
3136573a70 tests: eliminate List::MoreUtils 2011-10-05 23:21:36 +01:00
Michael Stapelberg
b9224634dd tests: eliminate Try::Tiny 2011-10-05 23:21:23 +01:00
Michael Stapelberg
689f3b8cf7 tests: Eliminate IO::Scalar 2011-10-05 23:17:09 +01:00
Michael Stapelberg
b9cd9132d0 tests: remove unused Proc::Background 2011-10-05 20:48:34 +01:00
Michael Stapelberg
bd33c09845 tests: move i3test.pm from t/lib to lib/ 2011-10-04 23:39:36 +01:00
Michael Stapelberg
57484553e6 tests: use a lot higher timeouts
This makes the tests more robust on a machine which is loaded.
Also, it makes the tests run (significantly) longer if anything goes wrong.
2011-10-04 23:36:57 +01:00
Michael Stapelberg
359717970d tests: don’t overwrite $timeout, kill timer when done 2011-10-04 23:36:43 +01:00
Michael Stapelberg
4e1d50fa3a tests: Convert all testcases to use the new launch_with_config API
It now returns a pid directly, not a Proc::Background object.
2011-10-04 23:34:23 +01:00
Michael Stapelberg
8d9b4c3c04 tests: launch_with_config: use socket activation 2011-10-04 23:33:38 +01:00
Michael Stapelberg
bf33c8d7c9 tests: SocketActivation: append to the logfile, more comments 2011-10-04 23:31:33 +01:00
Michael Stapelberg
c8d42fbabe tests: SocketActivation: only close() and dup2() if fileno(socket) != 3 2011-10-04 23:31:06 +01:00
Michael Stapelberg
6c7c4d52d0 tests: Refactor the socket activation into lib/SocketActivation.pm 2011-10-04 23:30:30 +01:00
Michael Stapelberg
a94ec5ee4e tests: re-order dependencies in complete-run, make clear which are shipped with Perl 2011-10-04 20:10:11 +01:00
Michael Stapelberg
53121c746c tests: remove unused dependency Proc::Background from complete-run 2011-10-04 20:05:12 +01:00
Michael Stapelberg
aa65b721b8 tests: eliminate dependency on the DateTime module by using POSIX::strftime 2011-10-04 20:03:08 +01:00
Michael Stapelberg
20d6ae4110 tests: make complete-run use POSIX::close(3) instead of reserving a file descriptor when starting
This makes it possible to run complete-run.pl with a "tainted" environment in
which fd 3 (and possibly others) are already present.
2011-10-04 19:58:17 +01:00
Michael Stapelberg
32ea923721 add a test for the 'move workspace next/prev' command 2011-10-02 22:18:21 +01:00
Michael Stapelberg
683bfa58d5 tests: Use AnyEvent::I3’s get_marks (requires AE::I3 >=0.08)
We also don’t bother with timeouts anymore. It’s expected to run the tests with
a sufficiently recent version of i3. The tests will just hang if it doesn’t
work.
2011-09-26 19:36:27 +01:00
Michael Stapelberg
1675499f15 docs/testsuite: a few corrections by fernandotcl 2011-09-25 14:23:47 +01:00
Michael Stapelberg
1eb011aae1 tests: make sure to leave no tempfiles behind 2011-09-24 16:28:21 +01:00
Michael Stapelberg
10a9d2a439 tests: Bugfix: 11-goto.t: use mktemp for generating a random mark, not base64
The base64 string could contain / and + which is treated specially since we
implemented PCRE support :)
2011-09-24 15:56:43 +01:00
Michael Stapelberg
761dac5514 tests: lib/i3test: Use //= instead of unless exists $args{key} (Thanks mxf) 2011-09-24 15:44:42 +01:00
Michael Stapelberg
378611c11c tests: refactor t/58-wm_take_focus to use wait_for_event 2011-09-24 15:38:31 +01:00
Michael Stapelberg
de5286da59 tests: lib/i3test: Remove open_standard_window, introduce open_window
open_window has a better API than open_standard_window. It uses named
parameters and supplies default values for everything you don’t specify. This
way, you can use every feature which X11::XCB::Window supports.
2011-09-24 15:11:37 +01:00
Michael Stapelberg
c3eb9f6c45 tests: complete-run: remove debugging messages 2011-09-24 13:13:26 +01:00
Michael Stapelberg
1a438f12ed tests: complete-run: display time i3 took for starting up 2011-09-24 13:13:09 +01:00
Michael Stapelberg
e244a75801 tests: complete_run: directly use X11::XCB instead of ::Connection
This saves about 0.5s wallclock time due to not starting up Moose/Mouse.
This is worthwhile when you develop a new feature and you are often invoking
complete_run for one specific test.
2011-09-24 13:09:20 +01:00
Michael Stapelberg
4da5b7e784 tests: use wait_for_{map,unmap} to eliminate more sleep()s 2011-09-24 13:08:02 +01:00
Michael Stapelberg
4821b13cae tests: lib/i3test: provide wait_for_map and wait_for_unmap
These functions should be used instead of calling wait_for_event directly when
waiting for MAP_NOTIFY or UNMAP_NOTIFY
2011-09-24 13:07:05 +01:00
Michael Stapelberg
38a9eabff1 tests: implement sync_with_i3 and use it instead of sleep()
Also use open_standard_window() in a few more places where appropriate
2011-09-24 11:15:08 +01:00
Michael Stapelberg
3167e9ad2d lib/i3test.pm: reformat exports list 2011-09-22 23:13:13 +01:00
Michael Stapelberg
83560c85d8 lib/i3test.pm: Don’t sleep(0.25), but wait until the window was mapped
This makes it faster and less racey
2011-09-22 23:13:12 +01:00
Michael Stapelberg
5542af316f t/65-for_window: add tests for window_role 2011-09-18 16:05:54 +01:00
Michael Stapelberg
99168a84a9 tests: also make launch_with_config() log to LOGPATH 2011-09-18 15:35:04 +01:00
Michael Stapelberg
c8c95030ad tests: extend t/35-floating-focus to use focus left/right on floating windows 2011-09-17 19:29:23 +01:00
Michael Stapelberg
7a38d8ac56 Merge branch 'master' into next 2011-09-17 14:13:05 +01:00
Michael Stapelberg
7a43af04af Tests: fix floating size, add a test to check floating size when starting in tiling 2011-09-17 14:12:16 +01:00
Michael Stapelberg
717ae819c5 Merge branch 'master' into next 2011-09-11 22:52:44 +01:00
Michael Stapelberg
2a215fd7e2 Bugfix: Ignore for_window commands with empty (invalid) criteria (+test) (Thanks aksr) 2011-09-11 22:52:33 +01:00
Michael Stapelberg
d82698efa7 make the old assign syntax trigger an i3-nagbar warning (it’s deprecated), adjust test 2011-09-11 22:01:36 +01:00
Michael Stapelberg
b3e1fb1f3b Make the old 'assign' case-insensitive again (+test) (Thanks aksr) 2011-09-11 21:16:45 +01:00
Michael Stapelberg
c1c1730516 pcre: enable UCP, UTF-8 (if available), extend t/19-match 2011-09-11 11:40:51 +01:00
Michael Stapelberg
8e04867e51 extend t/19-match to also test regular expressions 2011-09-10 23:52:39 +01:00
Michael Stapelberg
bf4d166330 extend t/17-workspace.t to check if the numbers are assigned correctly 2011-09-05 22:24:28 +02:00
Michael Stapelberg
f0a0236b7b Merge branch 'master' into next 2011-08-28 17:02:19 +02:00
Michael Stapelberg
96b219f27b migrate-config: use \s, be a bit more whitespace tolerant (+test) (Thanks sbedivere)
Fixes: #457
2011-08-28 17:01:59 +02:00
Michael Stapelberg
16188af8bf Merge branch 'master' into next 2011-08-28 15:47:35 +02:00
Michael Stapelberg
0b0a2dad51 t/66-assign: check if i3 crashes when assigning a dock window to floating 2011-08-28 15:43:51 +02:00
Michael Stapelberg
8114ecda47 Merge branch 'master' into next 2011-08-27 13:47:57 +02:00
Michael Stapelberg
e97a7e34f7 Bugfix: Re-implement reconfiguring height of dock windows (+test) (Thanks thomasba) 2011-08-27 13:47:10 +02:00
Michael Stapelberg
6c42a179ec Merge branch 'master' into next 2011-08-27 13:03:20 +02:00
Michael Stapelberg
4c01dbd726 Bugfix: Don’t always focus floating windows (fixes focus stealing with assignments) (+test) (Thanks aksr) 2011-08-27 13:02:44 +02:00
Michael Stapelberg
ff85023b08 Merge branch 'master' into next 2011-08-24 15:14:53 +02:00
Michael Stapelberg
0d35feb71b Bugfix: Make the 'resize' command work inside tabbed/stacked cons (+test) (Thanks sbedivere)
Fixes #461
2011-08-24 15:14:04 +02:00
Michael Stapelberg
642a745004 Merge branch 'master' into next 2011-08-24 00:57:36 +02:00
Michael Stapelberg
b8a656bca7 Add test for the 'focus mode_toggle' issue (#487) 2011-08-24 00:57:25 +02:00
Michael Stapelberg
22e30061f3 Merge branch 'master' into next 2011-08-17 16:37:09 +02:00
Michael Stapelberg
f172359ba5 Bugfix: Don’t change focus when assigned windows start on invisible workspaces (+test) (Thanks ioflag)
Fixes #468
2011-08-17 16:36:19 +02:00
Michael Stapelberg
3af7692a92 Merge branch 'tests-optimize' into next 2011-08-10 15:57:28 +02:00
Michael Stapelberg
5524785877 testsuite: eliminate sleep, wait until i3 replies via IPC 2011-08-10 15:56:39 +02:00
Michael Stapelberg
f8d834c62d Merge branch 'master' into next 2011-08-09 09:47:10 +02:00
Michael Stapelberg
98cc37e223 swap up/down, also modify the testcase 2011-08-09 09:46:02 +02:00
Michael Stapelberg
74687fa97c tests: add t/74-border-config which checks new_window and new_float 2011-08-09 09:29:59 +02:00
Michael Stapelberg
dab3a0b85a tests: add testcase for the GET_MARKS ipc request 2011-08-09 08:19:48 +02:00
Michael Stapelberg
51119c75c1 extend t/65-for_window to check for the 'instance' criterion 2011-08-04 20:11:01 +02:00
Michael Stapelberg
3ef7e3cee4 t/41-resize: also verify resize for floating windows 2011-08-03 14:48:33 +02:00
Michael Stapelberg
dcba8024de also handle quoted workspace names, extend t/72 for that 2011-08-03 03:33:12 +02:00
Michael Stapelberg
72d2b2c9bd add testcase to check if i3 starts on the first named workspace (ticket #449) 2011-08-03 02:56:24 +02:00
Michael Stapelberg
003f7043c5 t/70-force-focus-wrapping: use launch_with_config 2011-08-03 02:12:29 +02:00
Michael Stapelberg
7956289c2b t/67-workspace_layout: use launch_with_config 2011-08-03 02:04:52 +02:00
Michael Stapelberg
8734534b5c t/66-assign: use launch_with_config 2011-08-03 02:03:26 +02:00
Michael Stapelberg
506d8797b2 tests: implement i3test::launch_with_config, use it in t/65-for_window 2011-08-03 00:03:13 +02:00
Michael Stapelberg
b57e8570c9 t/65-for_window: add a testcase for multiple criteria 2011-08-02 19:46:10 +02:00
Michael Stapelberg
56499d8374 tests: make t/65-for-window.t use separate i3 instances 2011-08-02 19:21:09 +02:00
Michael Stapelberg
3204caa98d i3-migrate-config-to-v4: drop the .pl suffix
As lintian (a Debian package checker) mentions, it is more clever to install it
without the extension, since the implementation language might change.
2011-07-31 23:11:05 +02:00
Michael Stapelberg
eea804cd94 migrate-config: convert old 'with container' commands to 'focus parent; $command' (+test) (Thanks Marcus) 2011-07-27 14:36:22 +02:00
Michael Stapelberg
2b940296a8 tests: t/17-workspace.t: keep workspace 1 open
When not running i3 in a terminal from workspace 1, this would fail otherwise
2011-07-27 14:35:40 +02:00
Michael Stapelberg
26c1a463db tests: keep an X11 connection open to every display, fixes races
Otherwise, i3 is the only client and thus the X server shuts down after i3
disconnects. Xdummy restarts an X server, but that takes some time and
therefore sometimes the next testcase was unable to connect.
2011-07-27 14:34:35 +02:00
Michael Stapelberg
44be907197 add Xdummy script to start a headless X11 server 2011-07-25 15:37:46 +02:00
Michael Stapelberg
4dde5bb863 testsuite: allow parallel runs. decreases the test time by 60% when using 4 displays 2011-07-25 15:37:13 +02:00
Michael Stapelberg
49ea805905 tests: get the socket path from the X11 atom I3_SOCKET_PATH
The hard-coded socket paths are not useful when running the test suite in
parallel.
2011-07-25 13:35:56 +02:00
Michael Stapelberg
34eb9b2664 ipc: make 'focused' a bool 2011-07-24 15:00:09 +02:00
Michael Stapelberg
b09bb0fc2a ipc: make 'urgent' a bool 2011-07-24 14:54:30 +02:00
Michael Stapelberg
36fde6dbe1 ipc: send 'percent': null when percent is not relevant for the container 2011-07-24 14:47:28 +02:00
Michael Stapelberg
feaa161d2c testcases: explicitly mark the (short) config files as v4
i3 won’t call i3-migrate-config and thus won’t add a call to i3bar this way.
It’s not necessary and can interfere with some tests sometimes.
2011-07-15 01:37:54 +02:00
Michael Stapelberg
e117a8a77f migrate-config: mode foo → mode "foo" (+test) (Thanks cradle) 2011-07-15 00:22:26 +02:00
Michael Stapelberg
2d71102796 Bugfix: Switch to appropriate workspace when using 'focus' (+test) (Thanks rogutes)
Fixes #432
2011-07-14 23:45:36 +02:00
Michael Stapelberg
26d63fffc2 testcases: fix config-migrate test case after latest change 2011-07-14 23:07:10 +02:00
Michael Stapelberg
b63a559c28 migrate-config: also migrate border toggle (bt) (Thanks woddf2) 2011-07-09 01:02:13 +02:00
Michael Stapelberg
0fe564d122 tests: t/19-match needs a little delay 2011-07-09 01:01:52 +02:00