chiark / gitweb /
restore overwritten symlinks when the device goes away
[elogind.git] / test / udev-test.pl
index 464098fa65bdd6f24c633454349ec0ae36c8840a..36cbe8ac75ff76d5d920a22ed93bba9315079ae0 100755 (executable)
@@ -22,7 +22,7 @@ use strict;
 
 my $PWD                = $ENV{PWD};
 my $sysfs      = "sys/";
-my $udev_bin   = "../udev";
+my $udev_bin   = "../test-udev";
 my $udev_root  = "udev-root/"; # !!! directory will be removed !!!
 my $udev_conf  = "udev-test.conf";
 my $udev_rules = "udev-test.rules";
@@ -579,6 +579,24 @@ EOF
                rules           => <<EOF
 SUBSYSTEMS=="scsi", KERNELS=="*:0:0:0", NAME="scsi-0:0:0:0"
 SUBSYSTEMS=="scsi", KERNELS=="0:0:0:0", NAME="bad"
+EOF
+       },
+       {
+               desc            => "substitute attr with link target value (first match)",
+               subsys          => "block",
+               devpath         => "/block/sda",
+               exp_name        => "driver-is-sd",
+               rules           => <<EOF
+SUBSYSTEMS=="scsi", NAME="driver-is-\$attr{driver}"
+EOF
+       },
+       {
+               desc            => "substitute attr with link target value (currently selected device)",
+               subsys          => "block",
+               devpath         => "/block/sda",
+               exp_name        => "driver-is-aic7xxx",
+               rules           => <<EOF
+SUBSYSTEMS=="pci", NAME="driver-is-\$attr{driver}"
 EOF
        },
        {
@@ -1538,8 +1556,17 @@ EOF
                devpath         => "/block/sda/sda1",
                exp_name        => "yes",
                rules           => <<EOF
-KERNEL="sda1", NAME=="no"
+KERNEL="sda1", NAME="no"
 KERNEL=="sda1", NAME="yes"
+EOF
+       },
+       {
+               desc            => "operator chars in attribute",
+               subsys          => "block",
+               devpath         => "/block/sda",
+               exp_name        => "yes",
+               rules           => <<EOF
+KERNEL=="sda", ATTR{test:colon+plus}=="?*", NAME="yes"
 EOF
        },
        {