summaryrefslogtreecommitdiff
path: root/debian/patches/test_reset_version_on_call_change
blob: 3d6ae0632bc8efae780bd75da2d1d2139d3ce4a4 (plain)
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
39
40
41
42
Description: Using 'call' method doesn't reset gpg version
  GnuPG::Interface allows the use of the 'call' method to change
  the program to be used. Test that this works.
Author: Andrew Ruthven <andrew@etc.gen.nz>
Bug: https://rt.cpan.org/Ticket/Display.html?id=133021
Last-Update: 2021-01-28
--- /dev/null
+++ b/t/update_version.t
@@ -0,0 +1,33 @@
+#!/usr/bin/perl -w
+#
+# Request Tracker 4 tests use call() to change the program
+# to use to gpg1, however GnuPG::Interface has already set
+# the version to 2.2.x and didn't clear the version, therefore
+# GnuPG::Interface tried to use --pinentry-mode which
+# would fail.
+#
+# Test to ensure that version is cleared - which is then
+# lazy loaded when needed.
+
+use strict;
+
+use lib './t';
+use MyTest;
+
+use GnuPG::Interface;
+
+my $gnupg = GnuPG::Interface->new();
+
+# See that version is set
+TEST
+{
+    $gnupg->cmp_version($gnupg->version, '2.2') > 0;
+};
+
+$gnupg->call('gpg1');
+
+# See that version is set to 1.4.x.
+TEST
+{
+    $gnupg->cmp_version($gnupg->version, '1.5') < 0;
+};