@@ -905,5 +905,80 @@ describe("written-number", function () {
905905 } ) ;
906906 } ) ;
907907
908- } ) ;
908+ describe ( "writtenNumber(n, { lang: 'ru', ... })" , function ( ) {
909+ before ( function ( ) {
910+ writtenNumber . defaults . lang = "ru" ;
911+ } ) ;
912+
913+ it ( "gets exposed" , function ( ) {
914+ should . exist ( writtenNumber ) ;
915+ writtenNumber . should . be . instanceof ( Function ) ;
916+ } ) ;
917+ it ( "correctly converts numbers < 10" , function ( ) {
918+ writtenNumber ( 0 ) . should . equal ( "ноль" ) ;
919+ writtenNumber ( 1 ) . should . equal ( "один" ) ;
920+ writtenNumber ( 2 ) . should . equal ( "два" ) ;
921+ writtenNumber ( 3 ) . should . equal ( "три" ) ;
922+ writtenNumber ( 9 ) . should . equal ( "девять" ) ;
923+ } ) ;
924+
925+ it ( "correctly converts numbers < 20" , function ( ) {
926+ writtenNumber ( 11 ) . should . equal ( "одинадцать" ) ;
927+ writtenNumber ( 13 ) . should . equal ( "тринадцать" ) ;
928+ writtenNumber ( 19 ) . should . equal ( "девятнадцать" ) ;
929+ } ) ;
930+
931+ it ( "correctly converts numbers < 100" , function ( ) {
932+ writtenNumber ( 20 ) . should . equal ( "двадцать" ) ;
933+ writtenNumber ( 21 ) . should . equal ( "двадцать один" ) ;
934+ writtenNumber ( 25 ) . should . equal ( "двадцать пять" ) ;
935+ writtenNumber ( 73 ) . should . equal ( "семьдесят три" ) ;
936+ writtenNumber ( 80 ) . should . equal ( "восемьдесят" ) ;
937+ writtenNumber ( 88 ) . should . equal ( "восемьдесят восемь" ) ;
938+ } ) ;
939+
940+ it ( "correctly converts numbers < 1000" , function ( ) {
941+ writtenNumber ( 100 ) . should . equal ( "сто" ) ;
942+ writtenNumber ( 101 ) . should . equal ( "сто один" ) ;
943+ writtenNumber ( 110 ) . should . equal ( "сто десять" ) ;
944+ writtenNumber ( 111 ) . should . equal ( "сто одинадцать" ) ;
945+ writtenNumber ( 146 ) . should . equal ( "сто сорок шесть" ) ;
946+ writtenNumber ( 200 ) . should . equal ( "двести" ) ;
947+ writtenNumber ( 242 ) . should . equal ( "двести сорок два" ) ;
948+ } ) ;
909949
950+ it ( "correctly converts numbers > 1000" , function ( ) {
951+ writtenNumber ( 1000 ) . should . equal ( "одна тысяча" ) ;
952+ writtenNumber ( 2000 ) . should . equal ( "две тысячи" ) ;
953+ writtenNumber ( 3000 ) . should . equal ( "три тысячи" ) ;
954+ writtenNumber ( 4000 ) . should . equal ( "четыре тысячи" ) ;
955+ writtenNumber ( 5000 ) . should . equal ( "пять тысяч" ) ;
956+ writtenNumber ( 1234 ) . should . equal ( "одна тысяча двести тридцать четыре" ) ;
957+ writtenNumber ( 4323 ) . should . equal ( "четыре тысячи триста двадцать три" ) ;
958+ writtenNumber ( 1000000 ) . should . equal ( "один миллион" ) ;
959+ writtenNumber ( 2000000 ) . should . equal ( "два миллиона" ) ;
960+ writtenNumber ( 2000001 ) . should . equal ( "два миллиона один" ) ;
961+ writtenNumber ( 5000000 ) . should . equal ( "пять миллионов" ) ;
962+ writtenNumber ( 21000000 ) . should . equal (
963+ "двадцать один миллион"
964+ ) ;
965+ writtenNumber ( 111000000 ) . should . equal (
966+ "сто одинадцать миллионов"
967+ ) ;
968+ writtenNumber ( 214567891 ) . should . equal (
969+ "двести четырнадцать миллионов пятьсот шестьдесят семь тысяч восемьсот девяносто один"
970+ ) ;
971+ } ) ;
972+
973+ it ( "correctly converts numbers > 1 000 000 000" , function ( ) {
974+ writtenNumber ( 1000000000 ) . should . equal ( "один миллиард" ) ;
975+ writtenNumber ( 2580000000 ) . should . equal (
976+ "два миллиарда пятьсот восемьдесят миллионов"
977+ ) ;
978+ writtenNumber ( 1000000000000 ) . should . equal ( "один триллион" ) ;
979+ writtenNumber ( 3627000000000 ) . should . equal (
980+ "три триллиона шестьсот двадцать семь миллиардов"
981+ ) ;
982+ } ) ;
983+ } ) ;
984+ } ) ;
0 commit comments