Blame | Letzte Änderung | Log anzeigen | RSS feed
<?php/* vim: set expandtab tabstop=4 shiftwidth=4: *///// +----------------------------------------------------------------------+// | PHP version 4 |// +----------------------------------------------------------------------+// | Copyright (c) 1997-2003 The PHP Group |// +----------------------------------------------------------------------+// | This source file is subject to version 3.0 of the PHP license, |// | that is bundled with this package in the file LICENSE, and is |// | available at through the world-wide-web at |// | http://www.php.net/license/3_0.txt. |// | If you did not receive a copy of the PHP license and are unable to |// | obtain it through the world-wide-web, please send a note to |// | license@php.net so we can mail you a copy immediately. |// +----------------------------------------------------------------------+// | Authors: Xavier Noguer |// +----------------------------------------------------------------------+//// Numbers_Words class extension to spell numbers in Spanish (Castellano).//require_once 'Numbers/Words.php';require_once 'PHPUnit/Framework/TestCase.php';class Numbers_Words_SpanishTest extends PHPUnit_Framework_TestCase{/*** Testing numbers between 0 and 9*/function testDigits(){$digits = array('cero','uno','dos','tres','cuatro','cinco','seis','siete','ocho','nueve');for ($i = 0; $i < 10; $i++){$number = Numbers_Words::toWords($i, 'es');$this->assertEquals($digits[$i], $number);}}/*** Testing numbers between 10 and 99*/function testTens(){$tens = array(11 => 'once',12 => 'doce',16 => 'dieciseis',19 => 'diecinueve',20 => 'veinte',21 => 'veintiuno',26 => 'veintiseis',30 => 'treinta',31 => 'treinta y uno',40 => 'cuarenta',43 => 'cuarenta y tres',50 => 'cincuenta',55 => 'cincuenta y cinco',60 => 'sesenta',67 => 'sesenta y siete',70 => 'setenta',79 => 'setenta y nueve');foreach ($tens as $number => $word) {$this->assertEquals($word, Numbers_Words::toWords($number, 'es'));}}/*** Testing numbers between 100 and 999*/function testHundreds(){$hundreds = array(100 => 'cien',101 => 'ciento uno',199 => 'ciento noventa y nueve',203 => 'doscientos tres',287 => 'doscientos ochenta y siete',300 => 'trescientos',356 => 'trescientos cincuenta y seis',410 => 'cuatrocientos diez',434 => 'cuatrocientos treinta y cuatro',578 => 'quinientos setenta y ocho',689 => 'seiscientos ochenta y nueve',729 => 'setecientos veintinueve',894 => 'ochocientos noventa y cuatro',999 => 'novecientos noventa y nueve');foreach ($hundreds as $number => $word) {$this->assertEquals($word, Numbers_Words::toWords($number, 'es'));}}/*** Testing numbers between 1000 and 9999*/function testThousands(){$thousands = array(1000 => 'mil',1001 => 'mil uno',1097 => 'mil noventa y siete',1104 => 'mil ciento cuatro',1243 => 'mil doscientos cuarenta y tres',2385 => 'dos mil trescientos ochenta y cinco',3766 => 'tres mil setecientos sesenta y seis',4196 => 'cuatro mil ciento noventa y seis',5846 => 'cinco mil ochocientos cuarenta y seis',6459 => 'seis mil cuatrocientos cincuenta y nueve',7232 => 'siete mil doscientos treinta y dos',8569 => 'ocho mil quinientos sesenta y nueve',9539 => 'nueve mil quinientos treinta y nueve');foreach ($thousands as $number => $word) {$this->assertEquals($word, Numbers_Words::toWords($number, 'es'));}}}