File: 26_unknown_func.t

package info (click to toggle)
libmodule-install-perl 1.21-2
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 636 kB
  • sloc: perl: 3,569; makefile: 13
file content (111 lines) | stat: -rw-r--r-- 2,481 bytes parent folder | download | duplicates (3)
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
use strict;
BEGIN {
	$|  = 1;
	$^W = 1;
}

use Test::More;
use File::Spec;
use lib 't/lib';
use MyTest;

plan tests => 18;

SCOPE: {  # runtime error
	ok( create_dist('Foo', { 'Makefile.PL' => <<"END_DSL" }), 'create_dist' );
use strict;
use warnings;
use inc::Module::Install 0.81;
name          'Foo';
perl_version  '5.005';
all_from      'lib/Foo.pm';

unknown_func('args');

warn "after unknown func";

WriteAll;
END_DSL
	if ( supports_capture() ) {
		my $error = capture_build_dist();
		ok $?, 'build fails';
		ok( $error =~ /Unknown function is found/, 'correct error');
		ok( $error !~ /after unknown func/, 'no bogus warning');
		diag $error if $ENV{TEST_VERBOSE};
	}
	else {
		ok( !build_dist, 'build fails' );
		SKIP : {
			skip 'this platform does not support 2>&1', 2;
		}
	}
	my $file = makefile();
	ok(!-f $file, 'Makefile is not created');
	ok( kill_dist(), 'kill_dist' );
}

SCOPE: {  # Bareword not allowed while "strict subs" in use
	ok( create_dist('Foo', { 'Makefile.PL' => <<"END_DSL" }), 'create_dist' );
use strict;
use warnings;
use inc::Module::Install 0.81;
name          'Foo';
perl_version  '5.005';
all_from      'lib/Foo.pm';

unknown_func;

warn "after unknown func";

WriteAll;
END_DSL
	if ( supports_capture() ) {
		my $error = capture_build_dist();
		ok $?, 'build fails';
		ok( $error =~ /Bareword .+ not allowed/, 'correct error');
		ok( $error !~ /after unknown func/, 'no bogus warning');
		diag $error if $ENV{TEST_VERBOSE};
	}
	else {
		ok( !build_dist, 'build fails' );
		SKIP : {
			skip "this platform does not support 2>&1", 2;
		}
	}
	my $file = makefile();
	ok(!-f $file, 'Makefile is not created');
	ok( kill_dist(), 'kill_dist' );
}

SCOPE: {  # String found where operator expected
	ok( create_dist('Foo', { 'Makefile.PL' => <<"END_DSL" }), 'create_dist' );
use strict;
use warnings;
use inc::Module::Install 0.81;
name          'Foo';
perl_version  '5.005';
all_from      'lib/Foo.pm';

unknown_func 'args';

warn "after unknown func";

WriteAll;
END_DSL
	if ( supports_capture() ) {
		my $error = capture_build_dist();
		ok $?, 'build fails';
		ok( $error =~ /String found where operator expected/, 'correct error');
		ok( $error !~ /after unknown func/, 'no bogus warning');
		diag $error if $ENV{TEST_VERBOSE};
	}
	else {
		ok( !build_dist, 'build fails' );
		SKIP : {
			skip "this platform does not support 2>&1", 2;
		}
	}
	my $file = makefile();
	ok(!-f $file, 'Makefile is not created');
	ok( kill_dist(), 'kill_dist' );
}