From af7ee3eae689f9c31b49ea13758ad9c901918ce3 Mon Sep 17 00:00:00 2001 From: Martin Wilck Date: Mon, 23 Apr 2018 21:58:12 +0200 Subject: [PATCH] test/udev-test.pl: create rules only once It's not necessary to write the rules for every udev run, as we now may have many (rather than just 2) per test. --- test/udev-test.pl | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/test/udev-test.pl b/test/udev-test.pl index cf7c7e0bcd..1714b9c7da 100755 --- a/test/udev-test.pl +++ b/test/udev-test.pl @@ -2069,14 +2069,18 @@ EOF }, ); -sub udev { - my ($action, $devpath, $rules) = @_; +sub create_rules { + my ($rules) = @_; # create temporary rules system("mkdir", "-p", "$udev_rules_dir"); open CONF, ">$udev_rules" || die "unable to create rules file: $udev_rules"; print CONF $$rules; close CONF; +} + +sub udev { + my ($action, $devpath) = @_; if ($valgrind > 0) { return system("$udev_bin_valgrind $action $devpath"); @@ -2259,9 +2263,10 @@ sub run_test { my @devices = @{$rules->{devices}}; print "TEST $number: $rules->{desc}\n"; + create_rules(\$rules->{rules}); foreach my $dev (@devices) { print "device \'$dev->{devpath}\' expecting node/link \'$dev->{exp_name}\'\n"; - $rc = udev("add", $dev->{devpath}, \$rules->{rules}); + $rc = udev("add", $dev->{devpath}); if ($rc != 0) { print "$udev_bin add failed with code $rc\n"; $error++; @@ -2278,7 +2283,7 @@ sub run_test { } foreach my $dev (@devices) { - $rc = udev("remove", $dev->{devpath}, \$rules->{rules}); + $rc = udev("remove", $dev->{devpath}); if ($rc != 0) { print "$udev_bin remove failed with code $rc\n"; $error++; -- 2.25.1