udev-test.pl: add --strace option
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Mon, 22 Feb 2016 17:15:17 +0000 (12:15 -0500)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Mon, 22 Feb 2016 18:21:32 +0000 (13:21 -0500)
It's useful when trying to see what the tests are doing.
I hardcoded '-efile' as the option to strace, but in the future
it might be useful to make this configurable.

test/udev-test.pl

index 638c3e8..b047493 100755 (executable)
@@ -23,8 +23,10 @@ use strict;
 my $udev_bin            = "./test-udev";
 my $valgrind            = 0;
 my $gdb                 = 0;
+my $strace              = 0;
 my $udev_bin_valgrind   = "valgrind --tool=memcheck --leak-check=yes --track-origins=yes --quiet $udev_bin";
 my $udev_bin_gdb        = "gdb --args $udev_bin";
+my $udev_bin_strace     = "strace -efile $udev_bin";
 my $udev_dev            = "test/dev";
 my $udev_run            = "test/run";
 my $udev_rules_dir      = "$udev_run/udev/rules.d";
@@ -1330,6 +1332,8 @@ sub udev {
                 system("$udev_bin_valgrind $action $devpath");
         } elsif ($gdb > 0) {
                 system("$udev_bin_gdb $action $devpath");
+        } elsif ($strace > 0) {
+                system("$udev_bin_strace $action $devpath");
         } else {
                 system("$udev_bin", "$action", "$devpath");
         }
@@ -1509,6 +1513,9 @@ foreach my $arg (@ARGV) {
         } elsif ($arg =~ m/--gdb/) {
                 $gdb = 1;
                 printf("using gdb\n");
+        } elsif ($arg =~ m/--strace/) {
+                $strace = 1;
+                printf("using strace\n");
         } else {
                 push(@list, $arg);
         }