ef8bd2d6ecca3ca5a7752d31476d9ebb8bf8aa9b
[catagits/Test-NoTabs.git] / t / 11-all.t
1 use strict;
2
3 use Test::NoTabs;
4
5 use File::Temp qw( tempdir tempfile );
6
7 all_perl_files_ok();
8
9 notabs_ok( $0, "$0 is tab free" );
10
11 my $tabbed_file1 = make_tabbed_file1();
12 notabs_ok( $tabbed_file1 );
13
14 my $tabbed_file2 = make_tabbed_file2();
15 notabs_ok( $tabbed_file2 );
16
17 my $tabbed_file3 = make_tabbed_file3();
18 notabs_ok( $tabbed_file3 );
19
20
21 sub make_tabbed_file1 {
22   my $tmpdir = tempdir();
23   my ($fh, $filename) = tempfile( DIR => $tmpdir, SUFFIX => '.pL' );
24   print $fh <<'DUMMY';
25 #!/usr/bin/perl -w
26
27 =pod
28
29 =head1 NAME
30
31 This test script doesn't do anything.
32
33 =cut
34
35 sub main {
36     my ($name) = @_;
37     print "Hello $name!\n";
38 }
39
40 DUMMY
41   return $filename;
42 }
43
44 sub make_tabbed_file2 {
45   my $tmpdir = tempdir();
46   my ($fh, $filename) = tempfile( DIR => $tmpdir, SUFFIX => '.pL' );
47   print $fh <<'DUMMY';
48 #!/usr/bin/perl -w
49
50 =pod
51
52 =head1 NAME
53
54 This test script doesn't do anything.
55
56         Its OK to have tabs in pod
57
58 =cut
59
60 sub main {
61     my ($name) = @_;
62     print "Hello $name!\n";
63 }
64
65 DUMMY
66   return $filename;
67 }
68
69 sub make_tabbed_file3 {
70   my $tmpdir = tempdir();
71   my ($fh, $filename) = tempfile( DIR => $tmpdir, SUFFIX => '.pm' );
72   print $fh <<'DUMMY';
73 package My::Test;
74
75 use strict;
76 use warnings;
77
78 sub new {
79     my ($class) = @_;
80     my $self = bless {}, $class;
81     return $self;
82 }
83
84 1;
85 __END__
86         I can have tabs here too!
87 DUMMY
88   return $filename;
89 }