mirror of
https://git.openafs.org/openafs.git
synced 2025-01-19 07:20:11 +00:00
4953ce8070
Commit dc8f18d6f5
broke pt_util's
initialisation of empty databases. This is because Initdb was changed
to call Initdb_check through the ubik_CheckCache wrapper. However, that
wrapper was defined as a no-op in pt_util's ubik-shim.
Modify pt_util's ubik_CheckCache so that it always calls into the
wrapper routine - this mimics the old behaviour.
Add a trival test for pt_util - check that we can build the database,
using the example from the manpage, and then that the built database
matches what we expect.
Change-Id: I41aa9f6a531662230ed625cc3b1307016ef4107f
Reviewed-on: http://gerrit.openafs.org/4211
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
54 lines
1.2 KiB
Perl
Executable File
54 lines
1.2 KiB
Perl
Executable File
#!/usr/bin/perl
|
|
|
|
use strict;
|
|
use warnings;
|
|
|
|
use File::Basename;
|
|
use Test::More tests=>2;
|
|
|
|
my $builddir = $ENV{BUILD};
|
|
if (!$builddir) {
|
|
$builddir = dirname($0)."/..";
|
|
}
|
|
|
|
$builddir.="/..";
|
|
|
|
my $prdbfile = "/tmp/prdbtest.$$";
|
|
|
|
my $instructions = <<EOF;
|
|
admin 128/20 1 -204 -204
|
|
system:administrators 130/20 -204 -204 -204
|
|
admin 1
|
|
EOF
|
|
|
|
my $expected = <<EOF;
|
|
admin 128/20 1 -204 -204
|
|
anonymous 128/20 32766 -204 -204
|
|
system:backup 2/0 -205 -204 -204
|
|
system:administrators 130/20 -204 -204 -204
|
|
admin 1
|
|
system:ptsviewers 2/0 -203 -204 -204
|
|
system:authuser 2/0 -102 -204 -204
|
|
system:anyuser 2/0 -101 -204 -204
|
|
EOF
|
|
|
|
my $fh;
|
|
|
|
open $fh, '|-', "$builddir/src/ptserver/pt_util", '-w', '-p', $prdbfile
|
|
or die "Failed to start pt_util for DB creation\n";
|
|
print $fh $instructions;
|
|
close($fh)
|
|
or die "pt util failed while creating DB\n";
|
|
|
|
open $fh, '-|', "$builddir/src/ptserver/pt_util", '-p', $prdbfile,
|
|
'-user', '-group', '-members'
|
|
or die "Failed to start pt_util for DB reading\n";
|
|
|
|
my $output = join('', readline($fh));
|
|
close($fh)
|
|
or die "pt_util failed while reading from DB\n";
|
|
is($output, $expected, "pt_util produced expected output");
|
|
ok(1, "Completed sucessfully");
|
|
|
|
unlink($prdbfile);
|