]> scripts.mit.edu Git - autoinstallsdev/mediawiki.git/blob - t/maint/eol-style.t
MediaWiki 1.15.5
[autoinstallsdev/mediawiki.git] / t / maint / eol-style.t
1 #!/usr/bin/env perl
2 #
3 # Based on php-tag.t
4 #
5 use strict;
6 use warnings;
7
8 use Test::More;
9 use File::Find;
10 use IPC::Open3;
11 use File::Spec;
12 use Symbol qw(gensym);
13
14 my $ext = qr/(?: php | inc | txt | sql | t)/x;
15 my @files;
16
17 find( sub { push @files, $File::Find::name if -f && /\. $ext $/x }, '.' );
18
19 plan tests => scalar @files ;
20
21 for my $file (@files) {
22         open NULL, '+>', File::Spec->devnull and \*NULL or die;
23         my $pid = open3('<&NULL', \*P, '>&NULL', qw'svn propget svn:eol-style', $file);
24         my $res = do { local $/; <P> . "" };
25         chomp $res;
26         waitpid $pid, 0;
27
28         if ( $? != 0 ) {
29                 pass "svn propget failed, $file probably not under version control";
30         } elsif ( $res eq 'native' ) {
31                 pass "$file svn:eol-style is 'native'";
32         } else {
33                 fail "$file svn:eol-style is '$res', should be 'native'";
34         }
35 }