Michael Stapelberg
87d98a128f
tests: disable SHM logging, we redirect anyways
2011-12-10 11:32:15 +00:00
Maik Fischer
9a7d7919a6
testcases: introduce TestWorker.pm
...
instead of executing a new perl interpreter (via TAP::Parser)
each time we start a testfile, fork a TestWorker for each display.
Each worker preloads i3test via 'require', blocking waits on its ipc
to get a new filename, forks itself upon arrival and 'do'es this
testscript.
2011-12-04 14:14:20 +01:00
Maik Fischer
55c474d864
testcases: move Xdummy cleanup code to StartXDummy
2011-12-04 14:14:20 +01:00
Maik Fischer
43b8b8356d
complete-run: add cleanup sighandler
2011-12-04 14:14:20 +01:00
Maik Fischer
2d188bfc9b
complete-run: reorder code to make code flow more clear
2011-12-04 14:14:20 +01:00
Maik Fischer
6a5ca32c5a
complete-run: die if X11::XCB couldn’t connect to a display
2011-12-04 14:14:20 +01:00
Maik Fischer
8349190e09
testcases: always start i3 through i3test::launch_with_config
...
this will pave the way to just call BAIL_OUT and stop the currently
running testfile if i3 died for whatever reason.
2011-12-04 14:14:20 +01:00
Maik Fischer
e8d2fbbac8
testcases: Makefile.PL: NAME =~ s/ /-/
...
since NAME is used to generate targets,
a space will lead to invalid syntax eg:
Makefile:547: warning: overriding commands for target `i3'
Makefile:536: warning: ignoring old commands for target `i3'
2011-12-04 14:14:20 +01:00
Maik Fischer
423b891995
StartXdummy.pm: make Xdummy startup a bit more robust
2011-12-04 14:14:20 +01:00
Michael Stapelberg
0f9fbcbd25
Merge branch 'master' into next
2011-11-29 22:37:11 +00:00
Michael Stapelberg
626e3efb48
Bugfix: Fix 'resize' command in nested containers (Thanks mseed)
...
Fixes : #559
2011-11-29 22:36:40 +00:00
Michael Stapelberg
f5dce848b8
Merge branch 'master' into next
2011-11-26 22:18:01 +00:00
Michael Stapelberg
31acb91d90
Bugfix: Fix crash on '[class="i3bar"] focus' (+test) (Thanks f8l)
...
Fixes #575
2011-11-26 22:17:34 +00:00
Michael Stapelberg
5c59c0296c
tests: add test for ticket #561 (floating window size when changing border)
2011-11-26 21:20:00 +00:00
Maik Fischer
475dc3c532
testcases: use open_window everywhere
2011-11-23 20:33:44 +00:00
Maik Fischer
ec877f2ec4
i3test.pm: add before_map hook to open_window
2011-11-23 20:33:44 +00:00
Maik Fischer
9b8d9f7303
i3test.pm: open_(floating_)window: take arguments as hashref or key-value list
2011-11-23 20:33:44 +00:00
Maik Fischer
c2229b905a
testcases: replace sleep with sync_with_i3 where appropiate
2011-11-23 20:33:44 +00:00
Maik Fischer
33e9c29022
testcases: t/144-*: use open_window instead of launching urxvt
2011-11-23 20:33:44 +00:00
Maik Fischer
6bf13b413e
testcases: t/116-*: reinvent ignore() from Test::Deep
2011-11-23 00:03:09 +00:00
Maik Fischer
2f36351ab3
testcases: Makefile.PL: fix tabbing
2011-11-23 00:03:06 +00:00
Maik Fischer
372b98d08e
testcases: drop EV dependency
2011-11-23 00:03:00 +00:00
Maik Fischer
8d83697cc2
testcases: use Test::More is_deeply, don't depend on Test::Deep
2011-11-23 00:02:57 +00:00
Maik Fischer
3a9d94bba4
testcases: don't sync_with_i3() before $x->input_focus
...
since input_focus calls it anyways
2011-11-23 00:02:54 +00:00
Maik Fischer
0702f1fb7b
testcases: drop sync_with_i3()s $x parameter, use global
2011-11-23 00:02:50 +00:00
Maik Fischer
293517fb2e
testcases: drop open_floating_window()s $x parameter, use global
2011-11-23 00:02:47 +00:00
Maik Fischer
fce7570f96
testcases: drop open_window()s $x parameter, use global one instead
2011-11-21 23:51:04 +00:00
Maik Fischer
e9acd36ce4
t/005-floating.t: fix potentional race condition
2011-11-21 23:51:01 +00:00
Maik Fischer
da403b3667
testcases: use $x in wait_for_(un)map change to wait_for_(un)map($win)
...
wait_for_unmap currently ignores its $window parameter, since
X11::XCB doesn't provide $event->{window} for unmap events yet.
2011-11-21 23:50:58 +00:00
Maik Fischer
65471a6b18
testcases: only export eq_deeply, cmp_deeply from Test::Deep
2011-11-21 23:50:55 +00:00
Maik Fischer
ea2aba4319
testcases: undo 0f386a96
t/144-regress-floating-resize.t
...
wait_for_map can't be used, since we don't set structure_notify
on the urxvts windows
2011-11-21 23:50:52 +00:00
Maik Fischer
db6de84d0b
testcases: use global $x in wait_for_event, drop $x parameter
2011-11-21 23:50:48 +00:00
Maik Fischer
30ea33decb
testcases: let i3test.pm export $x, adapt testcases
2011-11-21 23:50:43 +00:00
Maik Fischer
1b1d7941ec
testcases: correctly enable lexical pragmata
...
eval 'package foo; use strict;' enables strict within eval, it does
not leak into the surrounding scope.
Also fix various warnings/compile errors found due to now enabled
strict and warnings.
2011-11-21 23:50:39 +00:00
Maik Fischer
0a65b770e8
i3test.pm: bail_out if injection of exported modules fails
2011-11-21 23:50:36 +00:00
Maik Fischer
e72899efb6
testcases: move i3test::X11 from 170-force_focus_wrapping.t into i3test.pm
2011-11-21 23:50:33 +00:00
Maik Fischer
0f386a96e7
testcases: fix race conditions in various tests
2011-11-21 19:21:14 +00:00
Maik Fischer
af793c9030
complete-run: wait for all jobs to be finished
2011-11-21 19:20:52 +00:00
Maik Fischer
4f2b1c3a66
testsuite: Makefile.PL: do not rename Makefile while running make clean
2011-11-21 19:14:46 +00:00
Michael Stapelberg
8a9b093bc3
tests: replace left-over move before/after commands (Thanks mxf)
2011-11-21 18:54:20 +00:00
Michael Stapelberg
2783aa9fc9
tests: add t/180-fd-leaks to ensure i3 does not leak fds on exec
2011-11-20 10:52:21 +00:00
Michael Stapelberg
3abd7ab073
complete-run: close all fds except for 0, 1, 2
...
running in a VIM subshell leads to one more fd, for example
2011-11-20 10:51:21 +00:00
Michael Stapelberg
b0ee2dfd32
complete-run: close the old socket fd
2011-11-20 10:24:13 +00:00
Michael Stapelberg
b6e859787e
clarify comments about socket activation (Thanks mxf)
2011-11-16 23:14:57 +00:00
Michael Stapelberg
33ee4679e7
tests: store temp configs in /tmp/
2011-11-16 21:41:45 +00:00
Michael Stapelberg
3665f3e755
tests: Bugfix: Fix socket activation (see comment)
2011-11-16 21:41:00 +00:00
Michael Stapelberg
77a9e4b18f
complete-run: implement --strace, make --valgrind log to test-specific file
2011-11-15 23:30:17 +00:00
Michael Stapelberg
9cbf34ac14
lib/SocketActivation: Bugfix: remove old code which leaks the socket file descriptor to i3
2011-11-15 19:54:03 +00:00
Michael Stapelberg
60bfc3a600
Bugfix: Correctly handle --no-startup-id with quoted exec commands (Thanks aksr)
...
Parser changes shortly before a release. What could possibly go wrong.
2011-11-11 00:28:04 +00:00
Michael Stapelberg
e73538a56f
t/154-regress-multiple-dock: s/next v/focus right
2011-11-10 18:43:03 +00:00
Michael Stapelberg
bebd2fceb6
Bugfix: Correctly return to initial state after prev/next/back_and_forth (Thanks Brian)
...
Fixes : #552
2011-11-10 18:42:24 +00:00
Michael Stapelberg
2c48280017
complete-run: remove Carp::Always, slipped in when debugging
2011-11-09 22:41:56 +00:00
Michael Stapelberg
316318c1fc
complete-run: don’t print long logfile paths, they are useless by now anyway
2011-11-09 22:38:29 +00:00
Maik Fischer
7633aa67a1
complete-run: log verbose output, display statuslines instead
2011-11-09 23:00:10 +01:00
Michael Stapelberg
31b01798dd
lib/SocketActivation: don’t make POSIX export everything (Thanks mxf)
2011-11-07 23:45:28 +00:00
Michael Stapelberg
c8eb7b08ac
lib/StartXDummy: use close STDOUT, STDERR instead of POSIX::close (Thanks mxf)
2011-11-07 23:39:45 +00:00
Michael Stapelberg
bf12befd6d
lib/StartXDummy.pm: document why we use -config /dev/null
2011-11-07 23:07:08 +00:00
Michael Stapelberg
afc488021f
complete-run.pl: automatically start Xdummy instances unless -d is specified
...
This makes running the testsuite incredibly easy:
$ ./complete-run.pl
:)
2011-11-07 23:04:45 +00:00
Michael Stapelberg
8b887e8447
complete-run: Bugfix: return condvar when $dont_start is true
2011-11-07 22:38:06 +00:00
Michael Stapelberg
0615cb3595
complete-run.pl: implement --help
2011-11-07 21:21:51 +00:00
Michael Stapelberg
fdf7b1706c
complete-run: Bugfix: Don’t call recv inside a callback when cleanly exiting i3
2011-11-07 20:56:36 +00:00
Michael Stapelberg
dbd6440432
complete-run: Use Carp::Always to get nice stacktraces in case of errors
2011-11-07 20:56:04 +00:00
Michael Stapelberg
c75cc525f7
lib/SocketActivation: use single quotes (for consistency)
2011-11-07 20:54:33 +00:00
Michael Stapelberg
1c0d69d4e6
complete-run: implement --valgrind
2011-11-07 20:53:49 +00:00
Michael Stapelberg
389fdcf79f
complete-run: pass outdir (not only logpath) to activate_i3()
2011-11-07 20:52:14 +00:00
Michael Stapelberg
50d14718f4
fix t/120-multiple-cmds: open a window before moving
2011-10-27 23:30:29 +01:00
Michael Stapelberg
edfa9febae
extend t/124-move.t to test move for floating containers
2011-10-27 21:46:01 +01:00
Michael Stapelberg
ca0c2a46e4
t/124-move.t: re-activate test for useless move commands
2011-10-27 21:22:41 +01:00
Michael Stapelberg
e710477a07
Bugfix: properly handle comments in colors {} blocks of bar config (+test) (Thanks fernandotcl)
2011-10-25 22:31:57 +01:00
Michael Stapelberg
af6f8ca7c2
complete-run: clear the DESKTOP_STARTUP_ID environment variable before starting i3
2011-10-25 22:21:59 +01:00
Michael Stapelberg
91d589b176
tests: extend t/175-startup-notification to test the --no-startup-id flag
2011-10-25 22:21:37 +01:00
Fernando Tarlá Cardoso Lemos
d490bae8a2
Close empty workspaces if they're not visible.
...
Previously, we'd only close an empty workspace when we moved away
from it. Now we also close it when the last client exits, as long
as that workspace is not visible anymore.
2011-10-24 00:12:14 +01:00
Michael Stapelberg
29f9f8c090
Fix tests: s/i3bar/bar {/ and hash prefix for color codes in GET_BAR_CONFIG
2011-10-23 21:51:43 +01:00
Michael Stapelberg
3a99c914e0
tests: default bar mode changed
2011-10-21 23:00:38 +01:00
Michael Stapelberg
bf408c9a08
tests: depend on AnyEvent::I3 0.09 (for get_bar_config)
2011-10-20 20:31:44 +01:00
Michael Stapelberg
ab2d96ba48
tests: modify $PATH so that it prefers the compiled versions of everything in ../
2011-10-20 19:02:08 +01:00
Michael Stapelberg
ad0f13a0a9
Clean bars before reloading the config (+test)
...
While the configuration gets updated in i3, the i3bar processes will not pick
up these changes. We have to think about a good way to do that.
2011-10-20 18:47:09 +01:00
Michael Stapelberg
15bface10d
Create different IDs for each bar (+test)
2011-10-19 19:57:39 +01:00
Michael Stapelberg
d9f3a31cb7
tests: add a test to check that bar configs are parsed correctly
2011-10-18 22:15:48 +01:00
Michael Stapelberg
82ec0169cb
tests: add t/176-workspace-baf for the workspace back_and_forth feature
2011-10-17 23:34:29 +01:00
Maik Fischer
fce422d99e
i3test.pm: use strict; use warnings; and fix related bugs
2011-10-12 22:21:57 +01:00
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