Lingua-TR-ASCII
view release on metacpan or search on metacpan
t/01-basic.t view on Meta::CPAN
q{Bogurtuler opucukler.},
q{BUYUKCE BIR TOPAC TOPARLAGI VE DE YUMAGI yumagi.},
q{Bilgisayarlarda uc adet bellek turu bulunur. Islemci icerisinde yer alan yazmaclar, son derece hizli ancak cok sinirli hafizaya sahiptirler. Islemcinin cok daha yavas olan ana bellege olan erisim gereksinimini gidermek icin kullanilirlar. Ana b...
q{1969 yilinda 15 yasindayken 1000 lira transfer parasi alarak Camialti Spor Kulubu'nde amator futbolcu oldu. Daha sonra IETT Spor Kulubu'nun amator futbolcusu oldu. 1976 yilinda, IETT sampiyon oldugunda, Erdogan da bu takimda oynamaktaydi. Eroks...
q{Opusmegi cagristiran catirtilar.},
q{Hadi bir masal uyduralim, icinde mutlu, doygun, telassiz durdugumuz.},
q{Yukarida belirtilmis olan faturalandirma tarihinden itibaren odeme suresi 20 gundur. Odeme yapilirken gonderen aciklamasi olarak, tarafiniza verilen telefon numarasi ve ilgili fatura numarasinin mutlaka belirtilmesi gerekmektedir.},
);
my @turkish = (
q{Acımasızca açelya görünen bir saçmalıktansa açılıp saçılmak...},
q{Acısından baÄırıp çaÄırarak saçma sözler söylemek.},
q{BöÄürtüler öpücükler.},
q{BÃYÃKÃE BİR TOPAà TOPARLAÄI VE DE YUMAÄI yumaÄı.},
q{Bilgisayarlarda üç adet bellek turu bulunur. İÅlemci içerisinde yer alan yazmaçlar, son derece hızlı ancak çok sınırlı hafızaya sahiptirler. İÅlemcinin çok daha yavaÅ olan ana bellege olan eriÅim gereksinimini gidermek için k...
q{1969 yılında 15 yaÅındayken 1000 lira transfer parası alarak Camialtı Spor Kulübü'nde amatör futbolcu oldu. Daha sonra İETT Spor Kulübü'nün amatör futbolcusu oldu. 1976 yılında, İETT Åampiyon olduÄunda, ErdoÄan da bu takımd...
q{ÃpüÅmeÄi çaÄrıÅtıran çatırtılar.},
q{Hadi bir masal uyduralım, içinde mutlu, doygun, telaÅsız durduÄumuz.},
q{Yukarıda belirtilmiÅ olan faturalandırma tarihinden itibaren ödeme süresi 20 gündür. Ãdeme yapılırken gönderen açıklaması olarak, tarafınıza verilen telefon numarası ve ilgili fatura numarasının mutlaka belirtilmesi gerekmekt...
);
for my $i ( 0..$#ascii ) {
my $ascii_verbatim = $ascii[$i];
my $turkish_verbatim = $turkish[$i];
my $turkish_converted = ascii_to_turkish( $ascii_verbatim );
my $ascii_converted = turkish_to_ascii( $turkish_verbatim );
is( $turkish_converted, $turkish_verbatim, 'EQ(turkish) ' . ($i + 1) );
_chars( $turkish_converted, $turkish_verbatim, 'EQ(turkish) ' . ($i + 1) );
is( $ascii_converted, $ascii_verbatim , 'EQ(ascii) ' . ($i + 1) );
_chars( $ascii_converted, $ascii_verbatim , 'EQ(ascii) ' . ($i + 1) );
}
TEST_WARN: {
my @warnings;
local $SIG{__WARN__} = sub {
my $msg = shift || return;
chomp $msg;
diag "WARNING: $msg\n";
push @warnings, $msg;
return;
};
is( ascii_to_turkish( undef ), undef, 'undef is undef' );
is( ascii_to_turkish( q{} ), q{}, 'Empty string is empty string' );
is( ascii_to_turkish( 0 ), 0, 'Zero is zero' );
ok( ! @warnings, 'No warnings' );
}
for my $i ( 1..CONTEXT_SIZE ) {
my $test1 = q(a) x $i;
my $test2 = qq(\n) x $i;
my $test3 = qq(a\n) x $i;
is( $test1, $test1, "SIZE EQ($i) $test1" );
is( $test2, $test2, "SIZE EQ($i) \\n" );
is( $test3, $test3, "SIZE EQ(${i}a) \\n" );
}
sub _chars {
my($got, $expected, $id) = @_;
my @got = split m{}xms, $got;
my @expected = split m{}xms, $expected;
if ( @got == @expected ) {
my @buf;
while ( @got ) {
my $char_got = shift @got;
my $char_exp = shift @expected;
next if $char_got eq $char_exp;
push @buf, [ $char_got, $char_exp ];
}
if ( @buf ) {
require Data::Dumper;
diag sprintf '[%s] Mismatching chars: %s', $id, Data::Dumper::Dumper( \@buf );
}
}
else {
diag sprintf '[%s] Char count mismatch %d != %d',
$id,
scalar @got,
scalar @expected;
}
return $got, $expected;
}
1;
__END__
( run in 0.380 second using v1.01-cache-2.11-cpan-71847e10f99 )