#!perl
# vim:ts=4:sw=4:expandtab
#
+# Please read the following documents before working on tests:
+# • https://build.i3wm.org/docs/testsuite.html
+# (or docs/testsuite)
+#
+# • https://build.i3wm.org/docs/lib-i3test.html
+# (alternatively: perldoc ./testcases/lib/i3test.pm)
+#
+# • https://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)
+#
# Verifies that scratchpad windows show up on the proper output.
# ticket #596, bug present until up to commit
# 89dded044b4fffe78f9d70778748fabb7ac533e9.
#
-use i3test;
+use i3test i3_config => <<EOT;
+# i3 config file (v4)
+font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
-my $i3 = i3(get_socket_path());
+fake-outputs 1024x768+0+0,1024x768+1024+0
+EOT
################################################################################
# Open a workspace on the second output, put a window to scratchpad, display
sub verify_scratchpad_on_same_ws {
my ($ws) = @_;
- is(scalar @{get_ws($ws)->{nodes}}, 0, 'no nodes on this ws');
+ is_num_children($ws, 0, 'no nodes on this ws');
my $window = open_window;
- is(scalar @{get_ws($ws)->{nodes}}, 1, 'one nodes on this ws');
+ is_num_children($ws, 1, 'one nodes on this ws');
cmd 'move scratchpad';
- is(scalar @{get_ws($ws)->{nodes}}, 0, 'no nodes on this ws');
+ is_num_children($ws, 0, 'no nodes on this ws');
cmd 'scratchpad show';
- is(scalar @{get_ws($ws)->{nodes}}, 0, 'no nodes on this ws');
+ is_num_children($ws, 0, 'no nodes on this ws');
is(scalar @{get_ws($ws)->{floating_nodes}}, 1, 'one floating node on this ws');
}
cmd "workspace $first";
- is(scalar @{get_ws($first)->{nodes}}, 0, 'no nodes on this ws');
+ is_num_children($first, 0, 'no nodes on this ws');
my $window = open_window;
- is(scalar @{get_ws($first)->{nodes}}, 1, 'one nodes on this ws');
+ is_num_children($first, 1, 'one nodes on this ws');
cmd 'move scratchpad';
- is(scalar @{get_ws($first)->{nodes}}, 0, 'no nodes on this ws');
+ is_num_children($first, 0, 'no nodes on this ws');
cmd "workspace $second";
cmd 'scratchpad show';
my $ws = get_ws($second);
- is(scalar @{$ws->{nodes}}, 0, 'no nodes on this ws');
+ is_num_children($second, 0, 'no nodes on this ws');
is(scalar @{$ws->{floating_nodes}}, 1, 'one floating node on this ws');
# Verify that the coordinates are within bounds.