android – 在Robolectric中获取所有语言的字符串

前端之家收集整理的这篇文章主要介绍了android – 在Robolectric中获取所有语言的字符串前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想做一个Robolectric测试,以确保法语中的所有字符串包含相同数量的占位符(我说的是%1 $s),就像英语中的字符串一样.

我试图添加@Config(qualifiers =“fr-land”),但是它提供了所有英文字符串(默认),并且只用法语给出了未用英语定义的字符串.

还试图创建一个新的Resource对象并提供自定义本地 – 似乎在Android中工作但在Robolectric中不起作用.

请帮忙!

解决方法

尝试在每次测试时调用以下代码段.这被报道为 https://github.com/robolectric/robolectric/issues/914解决方法
public static void setLocale( final Context context,final String language )
{
    final Locale locale = new Locale( language );
    Robolectric.shadowOf( context.getResources().getConfiguration() ).setLocale( locale );
    Locale.setDefault( locale );
}

猜你在找的Android相关文章