udev-test will run 115 tests: TEST 1: label test of scsi disc device '/block/sda' expecting node 'boot_disk' add: ok remove: ok TEST 2: label test of scsi partition device '/block/sda/sda1' expecting node 'boot_disk1' add: ok remove: ok TEST 3: label test of pattern match device '/block/sda/sda1' expecting node 'boot_disk1' add: ok remove: ok TEST 4: label test of multiple sysfs files device '/block/sda/sda1' expecting node 'boot_disk1' add: ok remove: ok TEST 5: label test of max sysfs files device '/block/sda/sda1' expecting node 'boot_disk1' add: ok remove: ok TEST 6: catch device by * device '/class/tty/ttyUSB0' expecting node 'visor/0' add: ok remove: ok TEST 7: catch device by * - take 2 device '/class/tty/ttyUSB0' expecting node 'visor/0' add: ok remove: ok TEST 8: catch device by ? device '/class/tty/ttyUSB0' expecting node 'visor/0' add: ok remove: ok TEST 9: catch device by character class device '/class/tty/ttyUSB0' expecting node 'visor/0' add: ok remove: ok TEST 10: replace kernel name device '/class/tty/ttyUSB0' expecting node 'visor' add: ok remove: ok TEST 11: Handle comment lines in config file (and replace kernel name) device '/class/tty/ttyUSB0' expecting node 'visor' add: ok remove: ok TEST 12: Handle comment lines in config file with whitespace (and replace kernel name) device '/class/tty/ttyUSB0' expecting node 'visor' add: ok remove: ok TEST 13: Handle whitespace only lines (and replace kernel name) device '/class/tty/ttyUSB0' expecting node 'whitespace' add: ok remove: ok TEST 14: Handle empty lines in config file (and replace kernel name) device '/class/tty/ttyUSB0' expecting node 'visor' add: ok remove: ok TEST 15: Handle backslashed multi lines in config file (and replace kernel name) device '/class/tty/ttyUSB0' expecting node 'visor' add: ok remove: ok TEST 16: preserve backslashes, if they are not for a newline device '/class/tty/ttyUSB0' expecting node 'aaa' add: ok remove: ok TEST 17: Handle stupid backslashed multi lines in config file (and replace kernel name) device '/class/tty/ttyUSB0' expecting node 'visor' add: ok remove: ok TEST 18: subdirectory handling device '/class/tty/ttyUSB0' expecting node 'sub/direct/ory/visor' add: ok remove: ok TEST 19: place on bus of scsi partition device '/block/sda/sda3' expecting node 'first_disk3' add: ok remove: ok TEST 20: test NAME substitution chars device '/block/sda/sda3' expecting node 'Major:8:minor:3:kernelnumber:3:bus:0:0:0:0' add: ok remove: ok TEST 21: test NAME substitution chars (with length limit) device '/block/sda/sda3' expecting node 'M8-m3-n3-b0:0-sIBM' add: ok remove: ok TEST 22: sustitution of sysfs value (%s{file}) device '/block/sda' expecting node 'disk-IBM-ESXS-sda' add: ok remove: ok TEST 23: program result substitution device '/block/sda/sda3' expecting node 'special-device-3' add: ok remove: ok TEST 24: program result substitution (no argument should be subsystem) device '/block/sda/sda3' expecting node 'subsys_block' add: ok remove: ok TEST 25: program result substitution (newline removal) device '/block/sda/sda3' expecting node 'newline_removed' add: ok remove: ok TEST 26: program result substitution device '/block/sda/sda3' expecting node 'test-0:0:0:0' add: ok remove: ok TEST 27: program with escaped format char (tricky: callout returns format char!) device '/block/sda/sda3' expecting node 'escape-3' add: ok remove: ok TEST 28: program with lots of arguments device '/block/sda/sda3' expecting node 'foo9' add: ok remove: ok TEST 29: program with subshell device '/block/sda/sda3' expecting node 'bar9' add: ok remove: ok TEST 30: program arguments combined with apostrophes device '/block/sda/sda3' expecting node 'foo7' add: ok remove: ok TEST 31: characters before the %c{N} substitution device '/block/sda/sda3' expecting node 'my-foo9' add: ok remove: ok TEST 32: substitute the second to last argument device '/block/sda/sda3' expecting node 'my-foo8' add: ok remove: ok TEST 33: invalid program for device with no bus device '/class/tty/console' expecting node 'TTY' add: ok remove: ok TEST 34: valid program for device with no bus device '/class/tty/console' expecting node 'foo' add: ok remove: ok TEST 35: invalid label for device with no bus device '/class/tty/console' expecting node 'TTY' add: ok remove: ok TEST 36: valid label for device with no bus device '/class/tty/console' expecting node 'foo' add: ok remove: ok TEST 37: program and bus type match device '/block/sda' expecting node 'scsi-0:0:0:0' add: ok remove: ok TEST 38: create all possible partitions device '/block/sda' expecting node 'boot_disk15' add: ok remove: ok TEST 39: sysfs parent hierarchy device '/class/tty/ttyUSB0' expecting node 'visor' add: ok remove: ok TEST 40: name test with ! in the name device '/block/rd!c0d0' expecting node 'rd/c0d0' add: ok remove: ok TEST 41: name test with ! in the name, but no matching rule device '/block/rd!c0d0' expecting node 'rd/c0d0' add: ok remove: ok TEST 42: name test with ! in the name for a partition device '/block/cciss!c0d0/cciss!c0d0p1' expecting node 'cciss/c0d0p1' add: ok remove: ok TEST 43: ID rule device '/block/sda' expecting node 'scsi-0:0:0:0' add: ok remove: ok TEST 44: ID wildcard all device '/block/sda' expecting node 'scsi-0:0:0:0' add: ok remove: ok TEST 45: ID wildcard partial device '/block/sda' expecting node 'scsi-0:0:0:0' add: ok remove: ok TEST 46: ID wildcard partial 2 device '/block/sda' expecting node 'scsi-0:0:0:0' add: ok remove: ok TEST 47: ignore SYSFS attribute whitespace device '/block/sda' expecting node 'ignored' add: ok remove: ok TEST 48: do not ignore SYSFS attribute whitespace device '/block/sda' expecting node 'matched-with-space' add: ok remove: ok TEST 49: permissions USER=bad GROUP=name device '/class/tty/tty33' expecting node 'tty33' permissions: ok add: ok remove: ok TEST 50: permissions OWNER=5000 device '/block/sda' expecting node 'node' permissions: ok add: ok remove: ok TEST 51: permissions GROUP=100 device '/block/sda' expecting node 'node' permissions: ok add: ok remove: ok TEST 52: textual user id device '/block/sda' expecting node 'node' Argument "nobody" isn't numeric in numeric ne (!=) at ./udev-test.pl line 1258. permissions: ok add: ok remove: ok TEST 53: textual group id device '/block/sda' expecting node 'node' permissions: ok add: ok remove: ok TEST 54: textual user/group id device '/block/sda' expecting node 'node' Argument "mail" isn't numeric in numeric ne (!=) at ./udev-test.pl line 1266. permissions: ok add: ok remove: ok TEST 55: permissions MODE=0777 device '/block/sda' expecting node 'node' permissions: ok add: ok remove: ok TEST 56: permissions OWNER=5000 GROUP=100 MODE=0777 device '/block/sda' expecting node 'node' permissions: ok add: ok remove: ok TEST 57: permissions OWNER to 5000 device '/class/tty/ttyUSB0' expecting node 'ttyUSB0' permissions: ok add: ok remove: ok TEST 58: permissions GROUP to 100 device '/class/tty/ttyUSB0' expecting node 'ttyUSB0' permissions: ok add: ok remove: ok TEST 59: permissions MODE to 0060 device '/class/tty/ttyUSB0' expecting node 'ttyUSB0' permissions: ok add: ok remove: ok TEST 60: permissions OWNER, GROUP, MODE device '/class/tty/ttyUSB0' expecting node 'ttyUSB0' permissions: ok add: ok remove: ok TEST 61: permissions only rule device '/class/tty/ttyUSB0' expecting node 'ttyUSB0' permissions: ok add: ok remove: ok TEST 62: multiple permissions only rule device '/class/tty/ttyUSB0' expecting node 'ttyUSB0' permissions: ok add: ok remove: ok TEST 63: permissions only rule with override at NAME rule device '/class/tty/ttyUSB0' expecting node 'ttyUSB0' permissions: ok add: ok remove: ok TEST 64: major/minor number test device '/block/sda' expecting node 'node' major:minor: ok add: ok remove: ok TEST 65: big minor number test device '/class/i2c-dev/i2c-300' expecting node 'node' major:minor: ok add: ok remove: ok TEST 66: big major number test device '/class/i2c-dev/i2c-fake1' expecting node 'node' major:minor: ok add: ok remove: ok TEST 67: big major and big minor number test device '/class/i2c-dev/i2c-fake2' expecting node 'node' major:minor: ok add: ok remove: ok TEST 68: multiple symlinks with format char device '/class/tty/ttyUSB0' expecting symlink 'symlink2-ttyUSB0' to node 'ttyUSB0' symlink: ok add: ok remove: ok TEST 69: symlink creation (same directory) device '/class/tty/ttyUSB0' expecting symlink 'visor0' to node 'ttyUSB0' symlink: ok add: ok remove: ok TEST 70: symlink creation (relative link forward) device '/block/sda/sda2' expecting symlink '1/2/symlink' to node 'a/b/node' symlink: ok add: ok remove: ok TEST 71: symlink creation (relative link back and forward) device '/block/sda/sda2' expecting symlink '1/2/c/d/symlink' to node '../../a/b/node' symlink: ok add: ok remove: ok TEST 72: multiple symlinks device '/class/tty/ttyUSB0' expecting symlink 'second-0' to node 'visor' symlink: ok add: ok remove: ok TEST 73: symlink only rule device '/block/sda' expecting symlink 'symlink-only2' to node 'link' symlink: ok add: ok remove: ok TEST 74: symlink name '.' device '/block/sda' expecting symlink '.' to node 'link' expected symlink from: '.' to 'link' symlink: not created as expected add: ok remove: error as expected TEST 75: symlink node to itself device '/class/tty/tty0' expecting symlink 'link' to node 'link' symlink: ok add: ok remove: error as expected TEST 76: symlink %n substitution device '/class/tty/ttyUSB0' expecting symlink 'symlink0' to node 'ttyUSB0' symlink: ok add: ok remove: ok TEST 77: symlink %k substitution device '/class/tty/ttyUSB0' expecting symlink 'symlink-ttyUSB0' to node 'ttyUSB0' symlink: ok add: ok remove: ok TEST 78: symlink %M:%m substitution device '/class/tty/ttyUSB0' expecting symlink 'major-188:0' to node 'ttyUSB0' symlink: ok add: ok remove: ok TEST 79: symlink %b substitution device '/block/sda' expecting symlink 'symlink-0:0:0:0' to node 'node' symlink: ok add: ok remove: ok TEST 80: symlink %c substitution device '/class/tty/ttyUSB0' expecting symlink 'test' to node 'ttyUSB0' symlink: ok add: ok remove: ok TEST 81: symlink %c{N} substitution device '/class/tty/ttyUSB0' expecting symlink 'test' to node 'ttyUSB0' symlink: ok add: ok remove: ok TEST 82: symlink %c{N+} substitution device '/class/tty/ttyUSB0' expecting symlink 'this' to node 'ttyUSB0' symlink: ok add: ok remove: ok TEST 83: symlink only rule with %c{N+} device '/block/sda' expecting symlink 'test' to node 'link' symlink: ok add: ok remove: ok TEST 84: symlink %s{filename} substitution device '/class/tty/ttyUSB0' expecting symlink '188:0' to node 'ttyUSB0' symlink: ok add: ok remove: ok TEST 85: symlink %Ns{filename} substitution device '/class/tty/ttyUSB0' expecting symlink '188' to node 'ttyUSB0' symlink: ok add: ok remove: ok TEST 86: symlink with '%' in name device '/class/tty/ttyUSB0' expecting symlink 'percent%sign' to node 'ttyUSB0' symlink: ok add: ok remove: ok TEST 87: symlink with '%' in name device '/class/tty/ttyUSB0' expecting symlink '%ttyUSB0_name' to node 'ttyUSB0' symlink: ok add: ok remove: ok TEST 88: program result substitution (numbered part of) device '/block/sda/sda3' expecting symlink 'link1' to node 'node' symlink: ok add: ok remove: ok TEST 89: program result substitution (numbered part of+) device '/block/sda/sda3' expecting symlink 'link4' to node 'node' symlink: ok add: ok remove: ok TEST 90: enumeration char test (single test) device '/block/sda' expecting node 'cdrom' add: ok remove: ok TEST 91: enumeration char test sequence 1/5 (keep) device '/block/sda' expecting node 'cdrom' add: ok TEST 92: enumeration char test sequence 2/5 (keep) device '/block/sda/sda1' expecting node 'enum' add: ok TEST 93: enumeration char test sequence 3/5 (keep) device '/block/sda/sda2' expecting node 'cdrom1' add: ok TEST 94: enumeration char test sequence 4/5 (keep) device '/block/sda/sda3' expecting node 'enum1' add: ok TEST 95: enumeration char test sequence 5/5 (clean) device '/block/sda/sda4' expecting node 'cdrom2' add: ok remove: ok TEST 96: enumeration char test after cleanup (single test) device '/block/sda' expecting node 'cdrom' add: ok remove: ok TEST 97: ignore rule test device '/block/sda' expecting node 'node' add: ok remove: ok TEST 98: all_partitions, option-only rule device '/block/sda' expecting node 'node6' add: ok remove: ok TEST 99: all_partitions, option-only rule (fail on partition) device '/block/sda/sda1' expecting node 'node6' add: error as expected remove: ok TEST 100: ignore remove event test device '/block/sda' expecting node 'node' add: ok remove: error as expected TEST 101: ignore remove event test (with all partitions) device '/block/sda' expecting node 'node14' add: ok remove: error as expected TEST 102: SUBSYSTEM match test device '/block/sda' expecting node 'node' add: ok remove: ok TEST 103: DRIVER match test device '/block/sda' expecting node 'node' add: ok remove: ok TEST 104: temporary node creation test device '/block/sda' expecting node 'node' add: error Can't exec "tree": No such file or directory at ./udev-test.pl line 1371. remove: ok TEST 105: devpath substitution test device '/block/sda' expecting node 'sda' add: ok remove: ok TEST 106: parent node name substitution test sequence 1/2 (keep) device '/block/sda' expecting node 'main_device' add: ok TEST 107: parent node name substitution test sequence 2/2 (clean) device '/block/sda/sda1' expecting node 'main_device-part-1' add: ok remove: ok TEST 108: udev_root substitution device '/block/sda/sda1' expecting node 'start-udev-root-end' add: ok remove: ok TEST 109: last_rule option device '/block/sda/sda1' expecting node 'last' add: ok remove: ok TEST 110: negation KERNEL!= device '/block/sda/sda1' expecting node 'match' add: ok remove: ok TEST 111: negation SUBSYSTEM!= device '/block/sda/sda1' expecting node 'not-anything' add: ok remove: ok TEST 112: negation PROGRAM!= exit code device '/block/sda/sda1' expecting node 'nonzero-program' add: ok remove: ok TEST 113: test for whitespace between the operator device '/block/sda/sda1' expecting node 'true' add: ok remove: ok TEST 114: ENV{} test device '/block/sda/sda1' expecting node 'true' add: ok remove: ok TEST 115: ENV{} test device '/block/sda/sda1' expecting node 'true' add: ok remove: ok 1 errors occured