[PATCH] let udev-test.pl run an individual test if you ask it to.

just put the test number on the command line:
	udev-test.pl 3
will run test number 3

If no test number is specified, all of the tests will be run, just like before.
This commit is contained in:
greg@kroah.com 2004-02-12 00:49:52 -08:00 committed by Greg KH
parent 1b9410278e
commit 2e31718495
1 changed files with 45 additions and 17 deletions

View File

@ -90,6 +90,16 @@ EOF
expected => "visor/0" ,
conf => <<EOF
KERNEL="ttyUSB*", NAME="visor/%n"
EOF
},
{
desc => "catch device by * - take 2",
subsys => "tty",
devpath => "class/tty/ttyUSB0",
expected => "visor/0" ,
conf => <<EOF
KERNEL="*USB1", NAME="bad"
KERNEL="*USB0", NAME="visor/%n"
EOF
},
{
@ -360,25 +370,12 @@ sub udev {
system("$udev_bin $subsys");
}
# prepare
system("rm -rf $udev_root");
mkdir($udev_root) || die "unable to create udev_root: $udev_root\n";
# test
my $error = 0;
print "\nudev-test will run ".($#tests + 1)." tests:\n\n";
# create initial config file
open CONF, ">$main_conf" || die "unable to create config file: $main_conf";
print CONF "udev_root=\"$udev_root\"\n";
print CONF "udev_db=\"$udev_db\"\n";
print CONF "udev_rules=\"$conf_tmp\"\n";
print CONF "udev_permissions=\"$perm\"\n";
close CONF;
foreach my $config (@tests) {
print "TEST: $config->{desc}\n";
sub run_test {
my ($config, $number) = @_;
print "TEST $number: $config->{desc}\n";
print "device \'$config->{devpath}\' expecting node \'$config->{expected}\'\n";
udev("add", $config->{subsys}, $config->{devpath}, \$config->{conf});
@ -402,6 +399,37 @@ foreach my $config (@tests) {
}
}
# prepare
system("rm -rf $udev_root");
mkdir($udev_root) || die "unable to create udev_root: $udev_root\n";
# create initial config file
open CONF, ">$main_conf" || die "unable to create config file: $main_conf";
print CONF "udev_root=\"$udev_root\"\n";
print CONF "udev_db=\"$udev_db\"\n";
print CONF "udev_rules=\"$conf_tmp\"\n";
print CONF "udev_permissions=\"$perm\"\n";
close CONF;
my $test_num = 1;
if ($ARGV[0]) {
# only run one test
$test_num = $ARGV[0];
print "udev-test will run test number $test_num only\n";
run_test($tests[$test_num], $test_num);
} else {
# test all
print "\nudev-test will run ".($#tests + 1)." tests:\n\n";
foreach my $config (@tests) {
run_test($config, $test_num);
$test_num++;
}
}
print "$error errors occured\n\n";
# cleanup