--- /dev/null
+<?php
+class Horde_Support_Numerizer_Locale_De extends Horde_Support_Numerizer_Locale_Base
+{
+
+ public $DIRECT_NUMS = array(
+ 'dreizehn' => 13,
+ 'vierzehn' => 14,
+ 'fünfzehn' => 15,
+ 'sechszehn' => 16,
+ 'siebzehn' => 17,
+ 'achtzehn' => 18,
+ 'neunzehn' => 19,
+ 'eins' => 1,
+ 'zwei' => 2,
+ 'zwo' => 2,
+ 'drei' => 3,
+ 'vier' => 4,
+ 'fünf' => 5,
+ 'sechs' => 6,
+ 'sieben' => 7,
+ 'acht' => 8,
+ 'neun' => 9,
+ 'zehn' => 10,
+ 'elf' => 11,
+ 'zwölf' => 12,
+ 'eine?' => 1,
+ );
+
+ public $TEN_PREFIXES = array(
+ 'zwanzig' => 20,
+ 'dreißig' => 30,
+ 'vierzig' => 40,
+ 'fünfzig' => 50,
+ 'sechzig' => 60,
+ 'siebzig' => 70,
+ 'achtzig' => 80,
+ 'neunzig' => 90,
+ );
+
+ public $BIG_PREFIXES = array(
+ 'hundert' => 100,
+ 'tausend' => 1000,
+ 'million' => 1000000,
+ 'milliarde' => 1000000000,
+ 'billion' => 1000000000000,
+ );
+
+}
\ No newline at end of file
--- /dev/null
+<?php
+/**
+ * @category Horde
+ * @package Horde_Support
+ * @subpackage UnitTests
+ */
+
+/**
+ * @category Horde
+ * @package Horde_Support
+ * @subpackage UnitTests
+ */
+class Horde_Support_NumerizerTestDe extends PHPUnit_Framework_TestCase
+{
+ public function testStraightParsing()
+ {
+ $numerizer = Horde_Support_Numerizer::factory();
+ $strings = array(
+ 1 => 'eins',
+ 5 => 'fünf',
+ 10 => 'zehn',
+ 11 => 'elf',
+ 12 => 'zwölf',
+ 13 => 'dreizehn',
+ 14 => 'vierzehn',
+ 15 => 'fünfzehn',
+ 16 => 'sechzehn',
+ 17 => 'siebzehn',
+ 18 => 'achtzehn',
+ 19 => 'neunzehn',
+ 20 => 'zwanzig',
+ 27 => 'siebenundzwanzig',
+ 31 => 'einunddreißig',
+ 59 => 'neunundfünfzig',
+ 100 => 'einhundert',
+ 100 => 'ein hundert',
+ 150 => 'hundertundfünfzig',
+ 150 => 'einhundertundfünfzig',
+ 200 => 'zweihundert',
+ 500 => 'fünfhundert',
+ 999 => 'neunhundertneunundneunzig',
+ 1000 => 'eintausend',
+ 1200 => 'zwölfhundert',
+ 1200 => 'eintausenzweihundert',
+ 17000 => 'siebzehntausend',
+ 21473 => 'einundzwanzigtausendvierhundertdreiundsiebzig',
+ 74002 => 'vierundsiebzigtausendzwei',
+ 74002 => 'vierundsiebzigtausendundzwei',
+ 99999 => 'neunundneunzigtausendneunhundertneunundneunzig',
+ 100000 => 'hunderttausend',
+ 100000 => 'einhunderttausend',
+ 250000 => 'zweihundertfünfzigtausend',
+ 1000000 => 'eine million',
+ 1250007 => 'eine million zweihundertfünfzigtausendundsieben',
+ 1000000000 => 'eine milliarde',
+ 1000000001 => 'eine milliarde und eins',
+ );
+
+ foreach ($strings as $key => $string) {
+ $this->assertEquals($key, (int)$numerizer->numerize($string));
+ }
+ }
+
+}