1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
# Copyright (c) 2021-2022, PostgreSQL Global Development Group
use strict;
use warnings;
use PostgreSQL::Test::Utils;
use Test::More;
my $tempdir = PostgreSQL::Test::Utils::tempdir;
program_help_ok('pg_verifybackup');
program_version_ok('pg_verifybackup');
program_options_handling_ok('pg_verifybackup');
command_fails_like(
['pg_verifybackup'],
qr/no backup directory specified/,
'target directory must be specified');
command_fails_like(
[ 'pg_verifybackup', $tempdir ],
qr/could not open file.*\/backup_manifest\"/,
'pg_verifybackup requires a manifest');
command_fails_like(
[ 'pg_verifybackup', $tempdir, $tempdir ],
qr/too many command-line arguments/,
'multiple target directories not allowed');
# create fake manifest file
open(my $fh, '>', "$tempdir/backup_manifest") || die "open: $!";
close($fh);
# but then try to use an alternate, nonexisting manifest
command_fails_like(
[ 'pg_verifybackup', '-m', "$tempdir/not_the_manifest", $tempdir ],
qr/could not open file.*\/not_the_manifest\"/,
'pg_verifybackup respects -m flag');
done_testing();
|