chiark / gitweb /
bleah, more merge fixes...
[elogind.git] / test / udev-test.pl
index 2ba63fe83fe61f5f0271c636cddba878e73b4285..3f9a848490297777e6b55ec6ecee21c48554f3d8 100644 (file)
@@ -35,6 +35,9 @@ my $perm      = "udev.permissions";
 my $main_conf = "udev-test.conf";
 my $conf_tmp  = "udev-test.rules";
 
+# uncomment following line to run udev with valgrind.
+# Should make this a runtime option to the script someday...
+#my $udev_bin  = "valgrind --tool=memcheck --leak-check=yes   ../udev";
 
 my @tests = (
        {
@@ -1102,6 +1105,48 @@ EOF
                exp_name        => "cdrom",
                conf            => <<EOF
 KERNEL="sda", NAME="cdrom%e"
+EOF
+       },
+       {
+               desc            => "ignore remove event test",
+               subsys          => "block",
+               devpath         => "/block/sda",
+               exp_name        => "node",
+               exp_error       => "yes",
+               conf            => <<EOF
+BUS="scsi", KERNEL="sda", NAME{ignore_remove}="node"
+EOF
+       },
+       {
+               desc            => "ignore remove event test (with all partitions)",
+               subsys          => "block",
+               devpath         => "/block/sda",
+               exp_name        => "node14",
+               exp_error       => "yes",
+               option          => "clear",
+               conf            => <<EOF
+BUS="scsi", KERNEL="sda", NAME{ignore_remove, all_partitions}="node"
+EOF
+       },
+       {
+               desc            => "SUBSYSTEM match test",
+               subsys          => "block",
+               devpath         => "/block/sda",
+               exp_name        => "node",
+               conf            => <<EOF
+BUS="scsi", KERNEL="sda", NAME="should_not_match", SUBSYSTEM="vc"
+BUS="scsi", KERNEL="sda", NAME="node", SUBSYSTEM="block"
+BUS="scsi", KERNEL="sda", NAME="should_not_match2", SUBSYSTEM="vc"
+EOF
+       },
+       {
+               desc            => "DRIVER match test",
+               subsys          => "block",
+               devpath         => "/block/sda",
+               exp_name        => "node",
+               conf            => <<EOF
+BUS="scsi", KERNEL="sda", NAME="should_not_match", DRIVER="sd-wrong"
+BUS="scsi", KERNEL="sda", NAME="node", DRIVER="sd"
 EOF
        },
 );
@@ -1111,6 +1156,7 @@ $ENV{UDEV_TEST} = "yes";
 $ENV{SYSFS_PATH} = $sysfs;
 $ENV{UDEV_CONFIG_FILE} = $main_conf;
 $ENV{UDEV_NO_DEVD} = "yes";
+$ENV{UDEV_NO_HOTPLUGD} = "yes";
 
 
 sub udev {
@@ -1217,7 +1263,6 @@ sub run_test {
 
 
        udev("add", $config->{subsys}, $config->{devpath}, \$config->{conf});
-
        if ((-e "$PWD/$udev_root$config->{exp_name}") ||
            (-l "$PWD/$udev_root$config->{exp_name}")) {