diff --git a/testcases/lib/i3test.pm b/testcases/lib/i3test.pm index c149cbd1..ac1a26ca 100644 --- a/testcases/lib/i3test.pm +++ b/testcases/lib/i3test.pm @@ -606,7 +606,7 @@ sub get_dock_clients { =head2 cmd($command) -Sends the specified command to i3. +Sends the specified command to i3 and returns the output. my $ws = unused_workspace; cmd "workspace $ws"; diff --git a/testcases/t/210-mark-unmark.t b/testcases/t/210-mark-unmark.t index 0083547f..99fc92c8 100644 --- a/testcases/t/210-mark-unmark.t +++ b/testcases/t/210-mark-unmark.t @@ -141,4 +141,21 @@ cmd 'mark --toggle important'; is(get_mark_for_window_on_workspace($tmp, $first), 'important', 'left container has the mark now'); ok(!get_mark_for_window_on_workspace($tmp, $second), 'second containr no longer has the mark'); +############################################################## +# 9: try to mark two cons with the same mark and check that +# it fails +############################################################## + +my $first = open_window(wm_class => 'iamnotunique'); +my $second = open_window(wm_class => 'iamnotunique'); + +my $result = cmd "[instance=iamnotunique] mark important"; + +is($result->[0]->{success}, 0, 'command was unsuccessful'); +is($result->[0]->{error}, 'A mark must not be put onto more than one window', 'correct error is returned'); +ok(!get_mark_for_window_on_workspace($tmp, $first), 'first container is not marked'); +ok(!get_mark_for_window_on_workspace($tmp, $second), 'second containr is not marked'); + +############################################################## + done_testing;