From 22e27dc6d66bf15f51328988be712962ac6a2776 Mon Sep 17 00:00:00 2001 From: Jan Schneider Date: Mon, 10 Nov 2008 15:44:06 +0100 Subject: [PATCH] Add German class and unit test. --- .../lib/Horde/Support/Numerizer/Locale/De.php | 48 ++++++++++++++++ .../test/Horde/Support/NumerizerTestDe.php | 64 ++++++++++++++++++++++ 2 files changed, 112 insertions(+) create mode 100644 framework/Horde_Date_Parser/lib/Horde/Support/Numerizer/Locale/De.php create mode 100644 framework/Horde_Date_Parser/test/Horde/Support/NumerizerTestDe.php diff --git a/framework/Horde_Date_Parser/lib/Horde/Support/Numerizer/Locale/De.php b/framework/Horde_Date_Parser/lib/Horde/Support/Numerizer/Locale/De.php new file mode 100644 index 000000000..cd4d259f4 --- /dev/null +++ b/framework/Horde_Date_Parser/lib/Horde/Support/Numerizer/Locale/De.php @@ -0,0 +1,48 @@ + 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 diff --git a/framework/Horde_Date_Parser/test/Horde/Support/NumerizerTestDe.php b/framework/Horde_Date_Parser/test/Horde/Support/NumerizerTestDe.php new file mode 100644 index 000000000..400b46ea6 --- /dev/null +++ b/framework/Horde_Date_Parser/test/Horde/Support/NumerizerTestDe.php @@ -0,0 +1,64 @@ + '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)); + } + } + +} -- 2.11.0