aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/findlang.pl34
-rwxr-xr-xtests/findlang.sh3
2 files changed, 37 insertions, 0 deletions
diff --git a/tests/findlang.pl b/tests/findlang.pl
new file mode 100644
index 0000000..58dfa52
--- /dev/null
+++ b/tests/findlang.pl
@@ -0,0 +1,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");
+}
+
diff --git a/tests/findlang.sh b/tests/findlang.sh
new file mode 100755
index 0000000..10b422c
--- /dev/null
+++ b/tests/findlang.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec perl tests/findlang.pl