]> git.sur5r.net Git - i3/i3/commitdiff
tests: Make i3 create its temporary files in /tmp/i3-testsuite
authorMichael Stapelberg <michael@stapelberg.de>
Mon, 30 Jan 2012 15:51:48 +0000 (15:51 +0000)
committerMichael Stapelberg <michael@stapelberg.de>
Tue, 7 Feb 2012 22:38:45 +0000 (17:38 -0500)
This behavior can be avoided by passing dont_create_temp_dir => 1 to
launch_with_config (or activate_i3).

This commit fixes t/159-socketpaths.t being flaky on non-systemd computers.

testcases/lib/SocketActivation.pm
testcases/lib/i3test.pm
testcases/t/159-socketpaths.t

index d09d33fbd1c72c79b217ad6ba7a98e3f5e5cee34..8f52bddc4a3eb8a92a3ba37ae8363a29cfd9b779 100644 (file)
@@ -52,6 +52,10 @@ sub activate_i3 {
         $ENV{LISTEN_PID} = $$;
         $ENV{LISTEN_FDS} = 1;
         delete $ENV{DESKTOP_STARTUP_ID};
+        unless ($args{dont_create_temp_dir}) {
+            $ENV{XDG_RUNTIME_DIR} = '/tmp/i3-testsuite/';
+            mkdir $ENV{XDG_RUNTIME_DIR};
+        }
         $ENV{DISPLAY} = $args{display};
         $ENV{PATH} = join(':',
             '../i3-nagbar',
index 09c66dc5895189b8be3168fba74bdb0385125fdb..8204f842de85a24f154ca59bafec3fc0842e4f91 100644 (file)
@@ -513,6 +513,8 @@ sub launch_with_config {
 
     $tmp_socket_path = "/tmp/nested-$ENV{DISPLAY}";
 
+    $args{dont_create_temp_dir} //= 0;
+
     my ($fh, $tmpfile) = tempfile("i3-cfg-for-$ENV{TESTNAME}-XXXXX", UNLINK => 1);
 
     if ($config ne '-default') {
@@ -540,6 +542,7 @@ sub launch_with_config {
         strace => $ENV{STRACE},
         restart => $ENV{RESTART},
         cv => $cv,
+        dont_create_temp_dir => $args{dont_create_temp_dir},
     );
 
     # force update of the cached socket path in lib/i3test
index cc54d5a980f7581bf8c2dbbaed39b1e4ecc50e0d..c63bbbc4e12d6e8efa0cf31292c5b96a04809c7d 100644 (file)
@@ -23,7 +23,7 @@ delete $ENV{XDG_RUNTIME_DIR};
 # See which files exist in /tmp before to not mistakenly check an already
 # existing tmpdir of another i3 instance.
 my @files_before = </tmp/i3-*>;
-my $pid = launch_with_config($config, dont_add_socket_path => 1);
+my $pid = launch_with_config($config, dont_add_socket_path => 1, dont_create_temp_dir => 1);
 my @files_after = </tmp/i3-*>;
 @files_after = grep { !($_ ~~ @files_before) } @files_after;
 
@@ -49,7 +49,7 @@ ok(! -e "$rtdir/i3", "$rtdir/i3 does not exist yet");
 
 $ENV{XDG_RUNTIME_DIR} = $rtdir;
 
-$pid = launch_with_config($config, dont_add_socket_path => 1);
+$pid = launch_with_config($config, dont_add_socket_path => 1, dont_create_temp_dir => 1);
 
 ok(-d "$rtdir/i3", "$rtdir/i3 exists and is a directory");
 $socketpath = "$rtdir/i3/ipc-socket." . $pid;
@@ -71,7 +71,7 @@ font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
 ipc-socket $socketpath
 EOT
 
-$pid = launch_with_config($config, dont_add_socket_path => 1);
+$pid = launch_with_config($config, dont_add_socket_path => 1, dont_create_temp_dir => 1);
 
 ok(-S $socketpath, "file $socketpath exists and is a socket");