summaryrefslogtreecommitdiff
path: root/t/list_secret_keys.t
diff options
context:
space:
mode:
Diffstat (limited to 't/list_secret_keys.t')
-rw-r--r--t/list_secret_keys.t102
1 files changed, 102 insertions, 0 deletions
diff --git a/t/list_secret_keys.t b/t/list_secret_keys.t
new file mode 100644
index 0000000..13a7ae2
--- /dev/null
+++ b/t/list_secret_keys.t
@@ -0,0 +1,102 @@
+#!/usr/bin/perl -w
+#
+# $Id: list_secret_keys.t,v 1.7 2001/05/03 06:00:06 ftobin Exp $
+#
+
+use strict;
+use English qw( -no_match_vars );
+
+use lib './t';
+use MyTest;
+use MyTestSpecific;
+
+my $outfile;
+
+TEST
+{
+ reset_handles();
+
+ $ENV{LC_MESSAGES} = 'C';
+ my $pid = $gnupg->list_secret_keys( handles => $handles );
+ close $stdin;
+
+ $outfile = 'test/secret-keys/1.out';
+ my $out = IO::File->new( "> $outfile" )
+ or die "cannot open $outfile for writing: $ERRNO";
+ my $seckey_file = $gnupg->cmp_version($gnupg->version, '2.1') >= 0 ? 'pubring.kbx' : 'secring.gpg';
+ my $pubring_line = $gnupg->options->homedir() . '/' . $seckey_file . "\n";
+ while (<$stdout>) {
+ if ($_ eq $pubring_line) {
+ $out->print('test/gnupghome/'.$seckey_file."\n");
+ } elsif (/^--*$/) {
+ $out->print("--------------------------\n");
+ } else {
+ $out->print( $_ );
+ }
+ }
+ close $stdout;
+ $out->close();
+ waitpid $pid, 0;
+
+ return $CHILD_ERROR == 0;
+};
+
+
+TEST
+{
+ my $keylist;
+ if ($gnupg->cmp_version($gnupg->version, '2.1') < 0) {
+ $keylist = '0';
+ }
+ else {
+ if ($gnupg->cmp_version($gnupg->version, '2.1.11') <= 0) {
+ $keylist = '1';
+ }
+ else {
+ $keylist = '2';
+ }
+ }
+ my @files_to_test = ( 'test/secret-keys/1.'.$keylist.'.test' );
+
+ return file_match( $outfile, @files_to_test );
+};
+
+
+TEST
+{
+ reset_handles();
+
+ my $pid = $gnupg->list_secret_keys( handles => $handles,
+ command_args => '0x93AFC4B1B0288A104996B44253AE596EF950DA9C' );
+ close $stdin;
+
+ $outfile = 'test/secret-keys/2.out';
+ my $out = IO::File->new( "> $outfile" )
+ or die "cannot open $outfile for writing: $ERRNO";
+ $out->print( <$stdout> );
+ close $stdout;
+ $out->close();
+
+ waitpid $pid, 0;
+
+ return $CHILD_ERROR == 0;
+
+};
+
+
+TEST
+{
+ reset_handles();
+
+ $handles->stdout( $texts{temp}->fh() );
+ $handles->options( 'stdout' )->{direct} = 1;
+
+ my $pid = $gnupg->list_secret_keys( handles => $handles,
+ command_args => '0x93AFC4B1B0288A104996B44253AE596EF950DA9C' );
+
+ waitpid $pid, 0;
+
+ $outfile = $texts{temp}->fn();
+
+ return $CHILD_ERROR == 0;
+};