Blame SOURCES/Convert-ASN1-0.27-Use-temporary-output-files-for-tests.patch

8e8e16
From db01806c94b109117683aecf4b1934f8ce2a3137 Mon Sep 17 00:00:00 2001
8e8e16
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
8e8e16
Date: Wed, 28 Aug 2019 10:31:26 +0200
8e8e16
Subject: [PATCH] Use temporary output files for tests
8e8e16
MIME-Version: 1.0
8e8e16
Content-Type: text/plain; charset=UTF-8
8e8e16
Content-Transfer-Encoding: 8bit
8e8e16
8e8e16
I need to run the tests from a read-only directory. The t/07io.t fails
8e8e16
because it creates a file in ./t directory. This patch uses File::Temp
8e8e16
for creating the writable file.
8e8e16
8e8e16
Signed-off-by: Petr Písař <ppisar@redhat.com>
8e8e16
---
8e8e16
 dist.ini |  1 +
8e8e16
 t/07io.t | 11 ++++++-----
8e8e16
 2 files changed, 7 insertions(+), 5 deletions(-)
8e8e16
8e8e16
diff --git a/dist.ini b/dist.ini
8e8e16
index 167e3e2..6f2fb12 100644
8e8e16
--- a/dist.ini
8e8e16
+++ b/dist.ini
8e8e16
@@ -23,6 +23,7 @@ directory = examples
8e8e16
 [PodVersion]
8e8e16
 
8e8e16
 [Prereqs / TestRequires]
8e8e16
+File::Temp   = 0
8e8e16
 Test::More   = 0.90
8e8e16
 Math::BigInt = 1.997
8e8e16
 
8e8e16
diff --git a/t/07io.t b/t/07io.t
8e8e16
index 706cf51..cca31d7 100644
8e8e16
--- a/t/07io.t
8e8e16
+++ b/t/07io.t
8e8e16
@@ -2,6 +2,7 @@
8e8e16
 
8e8e16
 use Convert::ASN1 qw(:io);
8e8e16
 use IO::Socket;
8e8e16
+use File::Temp ();
8e8e16
 
8e8e16
 print "1..11\n";
8e8e16
 
8e8e16
@@ -14,11 +15,11 @@ my  $result = pack("C*", 0x30, 0x3D, 0x04, 0x04, 0x46, 0x72, 0x65, 0x64,
8e8e16
 			 0x73, 0x74, 0x04, 0x02, 0x6F, 0x66, 0x04, 0x07,
8e8e16
 			 0x73, 0x74, 0x72, 0x69, 0x6E, 0x67, 0x73);
8e8e16
 
8e8e16
-($file = $0) =~ s/t$/dat/;
8e8e16
-open(OUT,"> $file");
8e8e16
-asn_write(*OUT, $result);
8e8e16
-asn_write(*OUT, $result);
8e8e16
-close(OUT);
8e8e16
+$fd = File::Temp->new('UNLINK' => 0);
8e8e16
+$file = $fd->filename;
8e8e16
+asn_write($fd, $result);
8e8e16
+asn_write($fd, $result);
8e8e16
+$fd->close;
8e8e16
 
8e8e16
 open(IN,"< $file");
8e8e16
 sysread(IN,$buffer,1024);
8e8e16
-- 
8e8e16
2.21.0
8e8e16