use strict;
use vars qw($i $loaded $num);
BEGIN {
use Lingua::JA::Sort::JIS qw(jsort jcmp);
$| = 1;
$num = 10 + 1;
print "1..$num\n";
}
END {print "not ok 1\n" unless $loaded;}
$loaded = 1;
print "ok 1\n";
chomp(my @data = <DATA>);
unshift @data, "";
my $data = join ":",@data;
for $i (2..$num){
my @arr = shuffle(@data);
my $arr = join ":",@arr;
my @sort = jsort(@arr);
my $sort = join ":",@sort;
print $sort eq $data ? "ok $i\n" : "not ok $i\n";
}
sub shuffle {
my @array = @_;
my $i;
for ($i = @array; --$i; ) {
my $j = int rand ($i+1);
next if $i == $j;
@array[$i,$j] = @array[$j,$i];
}
return @array;
}
__DATA__
∞r∞
∞R#
∞t∞
#r∞
#R#
#t%
#T%
8t∞
8T∞
8t#
8T#
8t%
8T%
8t8
8T8
ωr∞
ΩR%
rr∞
rR∞
Rr∞
RR∞
RT%
rt8
tr∞
tr8
TR8
tt8
シャーレ
シャイ
シヤィ
シャレ
ちょこ
ちよこ
チョコレート
てーた
テータ
テェタ
てえた
でーた
データ
デェタ
でえた
テータg
てぇたg
てぇたG
テェタG
てーたー
テータァ
てーたあ
テェター
てぇたぁ
てえたー
でーたー
データァ
でェたァ
デぇタぁ
デエタア
ひゆ
びゅあ
ぴゅあ
びゅあー
ビュアー
ぴゅあー
ピュアー
ヒュウ
ヒユウ
ビュウア
びゅーあー
ビューアー
ビュウアー
ひゅん
ぴゅん
ふーり
フーリ
ふぅり
ふゥり
ふゥリ
フウリ
ぶーり
ブーリ
ぶぅり
ブゥり
ぷうり
プウリ
ふーりー
フゥリー
ふゥりィ
フぅリぃ
フウリー
ふうりぃ
ブウリイ
ぷーりー
ぷゥりイ
ぷうりー
プウリイ
フヽ
ふゞ
ぶゝ
ぶふ
ぶフ
ブふ
ブフ
ぶゞ
ぶぷ
ブぷ
ぷゝ
プヽ
ぷふ