01-num_to_ro.t 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #!perl -T
  2. use 5.006;
  3. use strict;
  4. use utf8;
  5. use warnings FATAL => 'all';
  6. use Test::More;
  7. plan tests => 23;
  8. BEGIN {
  9. use_ok('Lingua::RO::Numbers') || print "Bail out!\n";
  10. my %opts = (thousands_separator => q{});
  11. my $ron = Lingua::RO::Numbers->new(%opts);
  12. my $num = 124_445_223;
  13. is(Lingua::RO::Numbers::number_to_ro($num, %opts), $ron->number_to_ro($num));
  14. is($ron->number_to_ro(3), 'trei');
  15. is($ron->number_to_ro(0.001), 'zero virgulă zero zero unu');
  16. is($ron->number_to_ro(0.139), 'zero virgulă o sută treizeci și nouă');
  17. is($ron->number_to_ro(3.14), 'trei virgulă paisprezece');
  18. is($ron->number_to_ro(12.26), 'doisprezece virgulă douăzeci și șase');
  19. is($ron->number_to_ro(-9_960), 'minus nouă mii nouă sute șaizeci');
  20. is($ron->number_to_ro(1_000), 'o mie');
  21. is($ron->number_to_ro(4_200), 'patru mii două sute');
  22. is($ron->number_to_ro(10_017), 'zece mii șaptesprezece');
  23. is($ron->number_to_ro(62_000), 'șaizeci și două de mii');
  24. is($ron->number_to_ro(112_000), 'o sută doisprezece mii');
  25. is($ron->number_to_ro(120_000), 'o sută douăzeci de mii');
  26. is($ron->number_to_ro(1_012_000), 'un milion doisprezece mii');
  27. is($ron->number_to_ro(102_000_000), 'o sută două milioane');
  28. is($ron->number_to_ro(1_500_083), 'un milion cinci sute de mii optzeci și trei');
  29. is($ron->number_to_ro(1_114_000_000), 'un miliard o sută paisprezece milioane');
  30. is($ron->number_to_ro(119_830_000), 'o sută nouăsprezece milioane opt sute treizeci de mii');
  31. is($ron->number_to_ro(1_198_300_000), 'un miliard o sută nouăzeci și opt de milioane trei sute de mii');
  32. is($ron->number_to_ro(11_983_000_000), 'unsprezece miliarde nouă sute optzeci și trei de milioane');
  33. is($ron->number_to_ro(119_830_000_000), 'o sută nouăsprezece miliarde opt sute treizeci de milioane');
  34. is($ron->number_to_ro(-0.688121), 'minus zero virgulă șase sute optzeci și opt de mii o sută douăzeci și unu');
  35. }