From df65296a80140ab645a251e8ab6f04cefeb04ca9 Mon Sep 17 00:00:00 2001 From: Zeno Gantner Date: Sun, 13 Jan 2019 23:18:51 +0100 Subject: [PATCH] German: similar rule for million as for 100 and 1000; 2 more ordinal tests --- num2words/lang_DE.py | 2 ++ tests/test_de.py | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/num2words/lang_DE.py b/num2words/lang_DE.py index f681697..23c6f68 100644 --- a/num2words/lang_DE.py +++ b/num2words/lang_DE.py @@ -118,6 +118,8 @@ class Num2Word_DE(Num2Word_EU): # Exception: "hundertste" is usually preferred over "einhundertste" if res == "eintausendste" or res == "einhundertste": res = res.replace("ein", "", 1) + if res == "eine millionste": + res = res.replace("eine ", "", 1) return res diff --git a/tests/test_de.py b/tests/test_de.py index 2715e7f..3b451af 100644 --- a/tests/test_de.py +++ b/tests/test_de.py @@ -47,6 +47,9 @@ class Num2WordsDETest(TestCase): self.assertEqual( num2words(4000, ordinal=True, lang='de'), "viertausendste" ) + self.assertEqual( + num2words(1000000, ordinal=True, lang='de'), "millionste" + ) self.assertEqual( num2words(2000000, ordinal=True, lang='de'), "zwei millionste" ) @@ -57,6 +60,7 @@ class Num2WordsDETest(TestCase): def test_cardinal_at_some_numbers(self): self.assertEqual(num2words(100, lang='de'), "einhundert") + self.assertEqual(num2words(1000000, lang='de'), "eine million") self.assertEqual(num2words(2000000, lang='de'), "zwei millionen") self.assertEqual(num2words(4000000000, lang='de'), "vier milliarden") self.assertEqual(num2words(1000000000, lang='de'), "eine milliarde")