@@ -434,4 +434,82 @@ describe("written-number", function() {
434434 ) ;
435435 } ) ;
436436 } ) ;
437+
438+ describe ( "writtenNumber(n, { lang: 'tr', ... })" , function ( ) {
439+ before ( function ( ) {
440+ writtenNumber . defaults . lang = "tr" ;
441+ } ) ;
442+
443+ it ( "gets exposed" , function ( ) {
444+ should . exist ( writtenNumber ) ;
445+ writtenNumber . should . be . instanceof ( Function ) ;
446+ } ) ;
447+
448+ it ( "doesn't blow up weirdly with invalid input" , function ( ) {
449+ writtenNumber ( "asdfasdfasdf" ) . should . equal ( "" ) ;
450+ writtenNumber ( "0.as" ) . should . equal ( "" ) ;
451+ writtenNumber ( "0.123" ) . should . equal ( "sıfır" ) ;
452+ writtenNumber ( "0.8" ) . should . equal ( "bir" ) ;
453+ writtenNumber ( "2.8" ) . should . equal ( "üç" ) ;
454+ writtenNumber ( "asdf.8" ) . should . equal ( "" ) ;
455+ writtenNumber ( "120391938123.." ) . should . equal ( "" ) ;
456+ writtenNumber ( "1/3" ) . should . equal ( "" ) ;
457+ writtenNumber ( 1 / 3 ) . should . equal ( "sıfır" ) ;
458+ writtenNumber ( "1/2" ) . should . equal ( "" ) ;
459+ writtenNumber ( "1.123/2" ) . should . equal ( "" ) ;
460+ } ) ;
461+
462+ it ( "correctly converts numbers < 10" , function ( ) {
463+ writtenNumber ( 0 ) . should . equal ( "sıfır" ) ;
464+ writtenNumber ( 3 ) . should . equal ( "üç" ) ;
465+ writtenNumber ( 6 ) . should . equal ( "altı" ) ;
466+ } ) ;
467+
468+ it ( "correctly converts numbers < 20" , function ( ) {
469+ writtenNumber ( 13 ) . should . equal ( "on üç" ) ;
470+ writtenNumber ( 19 ) . should . equal ( "on dokuz" ) ;
471+ } ) ;
472+
473+ it ( "correctly converts numbers < 100" , function ( ) {
474+ writtenNumber ( 20 ) . should . equal ( "yirmi" ) ;
475+ writtenNumber ( 25 ) . should . equal ( "yirmi beş" ) ;
476+ writtenNumber ( 40 ) . should . equal ( "kırk" ) ;
477+ writtenNumber ( 88 ) . should . equal ( "seksen sekiz" ) ;
478+ writtenNumber ( 73 ) . should . equal ( "yetmiş üç" ) ;
479+ } ) ;
480+
481+ it ( "correctly converts numbers < 1000" , function ( ) {
482+ writtenNumber ( 200 ) . should . equal ( "iki yüz" ) ;
483+ writtenNumber ( 242 ) . should . equal ( "iki yüz kırk iki" ) ;
484+ writtenNumber ( 1234 ) . should . equal (
485+ "bin iki yüz otuz dört"
486+ ) ;
487+ writtenNumber ( 4323 ) . should . equal (
488+ "dört bin üç yüz yirmi üç"
489+ ) ;
490+ } ) ;
491+
492+ it ( "correctly converts numbers > 1000" , function ( ) {
493+ writtenNumber ( 4323000 ) . should . equal (
494+ "dört milyon üç yüz yirmi üç bin"
495+ ) ;
496+ writtenNumber ( 4323055 ) . should . equal (
497+ "dört milyon üç yüz yirmi üç bin elli beş"
498+ ) ;
499+ writtenNumber ( 1570025 ) . should . equal (
500+ "bir milyon beş yüz yetmiş bin yirmi beş"
501+ ) ;
502+ } ) ;
503+
504+ it ( "correctly converts numbers > 1 000 000 000" , function ( ) {
505+ writtenNumber ( 1000000000 ) . should . equal ( "bir milyar" ) ;
506+ writtenNumber ( 2580000000 ) . should . equal (
507+ "iki milyar beş yüz seksen milyon"
508+ ) ;
509+ writtenNumber ( 1000000000000 ) . should . equal ( "bir trilyon" ) ;
510+ writtenNumber ( 3627000000000 ) . should . equal (
511+ "üç trilyon altı yüz yirmi yedi milyar"
512+ ) ;
513+ } ) ;
514+ } ) ;
437515} ) ;
0 commit comments