summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2005-11-12 20:17:08 +0000
committermarcel <marcel@FreeBSD.org>2005-11-12 20:17:08 +0000
commit9ea593a1fbc2c9fc54805adbb860bfde21567a3c (patch)
tree8413f036c8bd69495419bdd247f7dd7525259b1c /tools
parentff08aa9e3d1fe568c1e62b1c7efc24142c1a7396 (diff)
downloadFreeBSD-src-9ea593a1fbc2c9fc54805adbb860bfde21567a3c.zip
FreeBSD-src-9ea593a1fbc2c9fc54805adbb860bfde21567a3c.tar.gz
Instead of saving the unit number of the md(4) device name, save the
whole name. This does not unnecessarily close the door that in some future we want to test on something other than md(4) devices. Also add a "conf" action so that we can check whether a gctl actually did the right thing or not. It's one thing to check that the result strings are as expected, but it doesn't tell us if the end result is correct. This needs a bit more fleshing out, but for now a visual (i.e. manual) check suffices.
Diffstat (limited to 'tools')
-rw-r--r--tools/regression/geom_gpt/gctl.t49
1 files changed, 26 insertions, 23 deletions
diff --git a/tools/regression/geom_gpt/gctl.t b/tools/regression/geom_gpt/gctl.t
index 615f198..052f8dc 100644
--- a/tools/regression/geom_gpt/gctl.t
+++ b/tools/regression/geom_gpt/gctl.t
@@ -32,7 +32,6 @@ chomp $srcdir;
my $cmd = "/tmp/gctl-$$";
my $out = "$cmd.out";
my $disk = "/tmp/disk-$$";
-my $unit = "";
my %steps = (
"000" => "gctl",
@@ -40,22 +39,23 @@ my %steps = (
"010" => "gctl verb=create",
"011" => "gctl verb=create provider=bogus",
"020" => "mdcfg create pristine",
- "021" => "gctl verb=create provider=md%unit% entries=-1",
- "022" => "gctl verb=create provider=md%unit% entries=128",
- "023" => "gctl verb=create provider=md%unit%",
+ "021" => "gctl verb=create provider=%dev% entries=-1",
+ "022" => "gctl verb=create provider=%dev% entries=128",
+ "023" => "gctl verb=create provider=%dev%",
"024" => "conf",
"030" => "gctl verb=add",
"031" => "gctl verb=add geom=bogus",
- "032" => "gctl verb=add geom=md%unit%",
- "033" => "gctl verb=add geom=md%unit% type=bogus",
- "034" => "gctl verb=add geom=md%unit% type=ed0101b0-2a71-11da-ba81-003048416ace",
- "035" => "gctl verb=add geom=md%unit% type=ed0101b0-2a71-11da-ba81-003048416ace start=1",
- "036" => "gctl verb=add geom=md%unit% type=ed0101b0-2a71-11da-ba81-003048416ace start=34",
- "037" => "gctl verb=add geom=md%unit% type=ed0101b0-2a71-11da-ba81-003048416ace start=34 end=12345678",
- "038" => "gctl verb=add geom=md%unit% type=ed0101b0-2a71-11da-ba81-003048416ace start=34 end=546",
+ "032" => "gctl verb=add geom=%dev%",
+ "033" => "gctl verb=add geom=%dev% type=bogus",
+ "034" => "gctl verb=add geom=%dev% type=ed0101b0-2a71-11da-ba81-003048416ace",
+ "035" => "gctl verb=add geom=%dev% type=ed0101b0-2a71-11da-ba81-003048416ace start=1",
+ "036" => "gctl verb=add geom=%dev% type=ed0101b0-2a71-11da-ba81-003048416ace start=34",
+ "037" => "gctl verb=add geom=%dev% type=ed0101b0-2a71-11da-ba81-003048416ace start=34 end=12345678",
+ "038" => "gctl verb=add geom=%dev% type=ed0101b0-2a71-11da-ba81-003048416ace start=34 end=546",
+ "039" => "conf",
"100" => "mdcfg destroy",
"110" => "mdcfg create corrupted",
- "111" => "gctl verb=add geom=md%unit%",
+ "111" => "gctl verb=add geom=%dev%",
"120" => "mdcfg destroy",
);
@@ -67,7 +67,7 @@ my %result = (
"020" => "",
"021" => "FAIL 22 entries -1",
"022" => "PASS",
- "023" => "FAIL 17 geom 'md%unit%'",
+ "023" => "FAIL 17 geom '%dev%'",
"024" => "",
"030" => "FAIL 87 geom",
"031" => "FAIL 22 geom 'bogus'",
@@ -78,9 +78,10 @@ my %result = (
"036" => "FAIL 87 end",
"037" => "FAIL 22 end 12345678",
"038" => "PASS",
+ "039" => "",
"100" => "",
"110" => "",
- "111" => "FAIL 6 geom 'md%unit%'",
+ "111" => "FAIL 6 geom '%dev%'",
"120" => "",
);
@@ -107,15 +108,17 @@ $count = keys (%steps);
print "1..$count\n";
my $nr = 1;
+my $dev = "n/a";
foreach my $key (sort keys %steps) {
my ($action, $args) = split(/ /, $steps{$key}, 2);
+ my $res = $result{$key};
$args = "" if (not defined $args);
+ $args =~ s/%dev%/$dev/g;
+ $res =~ s/%dev%/$dev/g;
+
if ($action =~ "gctl") {
- $args =~ s/%unit%/$unit/g;
system("$cmd $verbose $args | tee $out 2>&1");
$st = `tail -1 $out`;
- my $res = $result{$key};
- $res =~ s/%unit%/$unit/g;
if ($st =~ "^$res") {
print "ok $nr \# gctl($key)\n";
} else {
@@ -128,17 +131,17 @@ foreach my $key (sort keys %steps) {
if ($args =~ "corrupted") {
system("gpt create -p $disk");
}
- $unit = `mdconfig -a -t vnode -f $disk`;
- chomp $unit;
- $unit =~ s/md//g;
+ $dev = `mdconfig -a -t vnode -f $disk`;
+ chomp $dev;
} elsif ($args =~ "destroy") {
- system("mdconfig -d -u $unit");
+ $dev =~ s/md/-u /g;
+ system("mdconfig -d $dev");
unlink $disk;
- $unit = "";
+ $dev = "n/a";
}
print "ok $nr \# mdcfg($key)\n";
} elsif ($action =~ "conf") {
- `sysctl -b kern.geom.confxml 2>&1`;
+ system("sysctl -b kern.geom.conftxt | grep -a $dev");
print "ok $nr \# conf($key)\n";
}
$nr += 1;
OpenPOWER on IntegriCloud