def test_full_lang_code(self): unload_all_languages() self.assertEqual(lingua_franca.get_default_lang(), None) # Return default full lang code if no primary code is passed lingua_franca.load_language('en') self.assertEqual(lingua_franca.get_full_lang_code(), 'en-us') lingua_franca.load_language('es') lingua_franca.set_default_lang('es') self.assertEqual(lingua_franca.get_full_lang_code(), 'es-es') # Go look up the default full code for a provided primary code self.assertEqual(lingua_franca.get_full_lang_code('de'), 'de-de') # Fail on wrong type, or language not recognized with self.assertRaises(TypeError): lingua_franca.get_full_lang_code(12) # TODO remove this test and replace with the one below as soon as practical self.assertWarns(DeprecationWarning, lingua_franca.get_full_lang_code, "bob robertson") # TODO this is the version of the test we should use once invalid lang # params are deprecated: # # with self.assertRaises( # lingua_franca.internal.UnsupportedLanguageError): # lingua_franca.get_full_lang_code("bob robertson") unload_all_languages()
def test_default_language_singles(self): # Load languages one at a time, ensure first is default self.assertEqual(lingua_franca.get_active_langs(), []) lingua_franca.load_language('en') self.assertEqual(lingua_franca.get_default_lang(), 'en') lingua_franca.load_language('es') self.assertEqual(lingua_franca.get_default_lang(), 'en') self.assertEqual(lingua_franca.parse.extract_number('dos'), False) self.assertEqual(lingua_franca.parse.extract_number('dos', lang='es'), 2) # Verify default language failover lingua_franca.unload_language('en') self.assertEqual(lingua_franca.get_default_lang(), 'es') unload_all_languages()
def test_set_default_language(self): lingua_franca.load_languages(['es', 'en']) lingua_franca.set_default_lang('en') self.assertEqual(lingua_franca.get_default_lang(), 'en') unload_all_languages() with self.assertRaises(ValueError): lingua_franca.set_default_lang('foobar')
def test_auto_default_language(self): lingua_franca.load_language('en') # Load two languages, ensure first is default lingua_franca.load_languages(['en', 'es']) self.assertEqual(lingua_franca.get_default_lang(), 'en') self.assertEqual(lingua_franca.parse.extract_number('one'), 1) unload_all_languages()
def test_set_active_langs(self): unload_all_languages() lingua_franca.load_languages(['en', 'es']) self.assertEqual(lingua_franca.get_active_langs(), ['en', 'es']) lingua_franca._set_active_langs('es') self.assertEqual(lingua_franca.get_default_lang(), 'es') self.assertFalse('en' in lingua_franca.get_active_langs()) unload_all_languages() with self.assertRaises(TypeError): lingua_franca._set_active_langs(157.75)
def test_load_language(self): lingua_franca.load_language('en') # Verify that English is loaded and, since it's the only language # we've loaded, also the default. self.assertEqual(lingua_franca.get_default_lang(), 'en') # Verify that English's default full code is 'en-us' self.assertEqual(lingua_franca.get_full_lang_code('en'), 'en-us') # Verify that this is also our current full code self.assertEqual(lingua_franca.get_default_loc(), 'en-us') self.assertFalse('es' in lingua_franca.get_active_langs()) # Verify that unloaded languages can't be invoked explicitly self.assertRaises(ModuleNotFoundError, lingua_franca.parse.extract_number, 'uno', lang='es') unload_all_languages()
def setUp(self): self.old_lang = get_default_lang() set_default_lang("sl-si")
def setUp(self): self.old_lang = get_default_lang() set_default_lang("de-de")