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_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()