aboutsummaryrefslogtreecommitdiffstats
path: root/tests/findlang.pl
blob: 58dfa527d0146df70fbe36ee399a7a771e6604a1 (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
#!/usr/bin/perl

use strict;
use warnings;

use Test::More qw(no_plan);

my $pwd = `pwd`;
chomp($pwd);
my $testarbo = "$pwd/find-lang-root";


my %files = (
    # file => [ lang, is_dir ]
    '/usr/share/man/fr' => [ 'fr', 1 ],
    '/usr/share/man/fr/man1' => [ 'fr', 1 ],
    '/usr/share/man/fr/man1/lang.1.*' => [ 'fr', 0 ],
);

system("/usr/bin/perl find-lang.pl $testarbo lang --with-man") and die "can't run find-lang $@";

open(my $h, '<', 'lang.lang') or die "can't open lang.lang";

while (my $line = <$h>) {
    chomp($line);
    my ($file) = $line =~ / ([^ ]+)$/;
    my ($lang) = $line =~ /%lang\(([^\)]+)\)/;
    $lang ||= '';
    my $dir = $line =~ /%dir/;
    $dir ||= 0;
    is($lang, $files{$file}[0], "lang is find");
    is($dir, $files{$file}[1], "%dir is properly set if need");
}