summaryrefslogtreecommitdiff
blob: 4040016fe9c6b447335f4edb31b4fb902f07b760 (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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
From fe02934c5a5bba11e351be5a2f3f95a4461779af Mon Sep 17 00:00:00 2001
From: Kent Fredric <kentnl@gentoo.org>
Date: Sat, 21 Oct 2017 15:37:11 +1300
Subject: Patch around annoying CPAN-initialization test

This is a terrible way of doing this, but its good enough for now
and convinces CPAN that its already configured and doesn't block
waiting for input. A more sensible narrow set is probably viable,
and OS specifics probably need to be considered.

Bug: https://rt.cpan.org/Ticket/Display.html?id=96782
---
 t/1-basic.t | 75 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 75 insertions(+)

diff --git a/t/1-basic.t b/t/1-basic.t
index dbf7e27..2cdffab 100644
--- a/t/1-basic.t
+++ b/t/1-basic.t
@@ -10,6 +10,7 @@ my $mm_args;
 my @prompts = qw/y n n y y/;
 
 use ExtUtils::MakeMaker;
+use File::Temp qw( tempdir );
 sub ExtUtils::MakeMaker::WriteMakefile { $mm_args = {@_} }
 sub ExtUtils::MakeMaker::prompt ($;$) { return 'n' }
 
@@ -24,6 +25,80 @@ my $fh  = Symbol::gensym;
 my $out = tie *$fh, __PACKAGE__;
 select(*$fh);
 
+my $tempdir = tempdir( 'tmp-XXXXXXX', DIR => './t' , CLEANUP => 1 );
+$ENV{HOME} = $tempdir;
+mkdir "$tempdir/.cpan";
+mkdir "$tempdir/.cpan/CPAN";
+{
+  open my $fh, '>', "$tempdir/.cpan/CPAN/MyConfig.pm" or die "can't open test MyConfig.pm: $! $?";
+  print $fh <<"EOF";
+\$CPAN::Config = {
+  'applypatch' => q[],
+  'auto_commit' => q[0],
+  'build_cache' => q[100],
+  'build_dir' => q[\Q$tempdir\E/build],
+  'build_dir_reuse' => q[0],
+  'build_requires_install_policy' => q[yes],
+  'bzip2' => q[/bin/bzip2],
+  'cache_metadata' => q[1],
+  'check_sigs' => q[0],
+  'colorize_output' => q[0],
+  'commandnumber_in_prompt' => q[1],
+  'connect_to_internet_ok' => q[1],
+  'cpan_home' => q[\Q$tempdir\E],
+  'ftp_passive' => q[1],
+  'ftp_proxy' => q[],
+  'getcwd' => q[cwd],
+  'gpg' => q[/usr/bin/gpg],
+  'gzip' => q[/bin/gzip],
+  'halt_on_failure' => q[0],
+  'histfile' => q[\Q$tempdir\E/histfile],
+  'histsize' => q[100],
+  'http_proxy' => q[],
+  'inactivity_timeout' => q[0],
+  'index_expire' => q[1],
+  'inhibit_startup_message' => q[0],
+  'keep_source_where' => q[\Q$tempdir\E/sources],
+  'load_module_verbosity' => q[none],
+  'make' => q[/usr/bin/make],
+  'make_arg' => q[],
+  'make_install_arg' => q[],
+  'make_install_make_command' => q[/usr/bin/make],
+  'makepl_arg' => q[],
+  'mbuild_arg' => q[],
+  'mbuild_install_arg' => q[],
+  'mbuild_install_build_command' => q[./Build],
+  'mbuildpl_arg' => q[],
+  'no_proxy' => q[],
+  'pager' => q[/usr/bin/less],
+  'patch' => q[/usr/bin/patch],
+  'perl5lib_verbosity' => q[none],
+  'prefer_external_tar' => q[1],
+  'prefer_installer' => q[MB],
+  'prefs_dir' => q[\Q$tempdir\E/prefs],
+  'prerequisites_policy' => q[follow],
+  'scan_cache' => q[atstart],
+  'shell' => q[/bin/bash],
+  'show_unparsable_versions' => q[0],
+  'show_upload_date' => q[0],
+  'show_zero_versions' => q[0],
+  'tar' => q[/bin/tar],
+  'tar_verbosity' => q[none],
+  'term_is_latin' => q[1],
+  'term_ornaments' => q[1],
+  'test_report' => q[0],
+  'trust_test_report_history' => q[0],
+  'unzip' => q[/usr/bin/unzip],
+  'urllist' => [q[http://cpan.kinghost.net/], q[http://cpan.dcc.uchile.cl/], q[http://www.laqee.unal.edu.co/CPAN/]],
+  'use_sqlite' => q[0],
+  'version_timeout' => q[15],
+  'wget' => q[/usr/bin/wget],
+  'yaml_load_code' => q[0],
+  'yaml_module' => q[YAML],
+  };
+EOF
+}
+
 # test from a clean state
 $ENV{PERL_EXTUTILS_AUTOINSTALL} = '';
 require ExtUtils::AutoInstall;
-- 
2.14.2