У нас есть пара тысяч локализованных строк в нашем приложении. Я хочу создать модульный тест для перебора всех ключей и всех наших поддерживаемых языков, чтобы убедиться, что каждый язык имеет все ключи, присутствующие в файле resx по умолчанию (на английском языке).
Моя идея состоит в том, чтобы использовать Reflection для получения всех ключей из класса Strings
, а затем использовать ResourceManager
, чтобы сравнить полученное значение для каждого ключа на каждом языке и сравнить его с убедитесь, что он не соответствует английской версии, но, конечно, некоторые слова совпадают на разных языках.
Есть ли способ проверить, получил ли ResourceManager
свое значение из вспомогательной сборки по сравнению с файлом ресурсов по умолчанию?
Пример вызова:
string en = resourceManager.GetString("MyString", new CultureInfo("en"));
string es = resourceManager.GetString("MyString", new CultureInfo("es"));
//compare here