Должен ли я переводить строку внутри модульного теста?
У меня есть модульный тест, в котором мне нужно распечатать строку, поэтому я решил использовать функцию t() для ее перевода:
$this->assertTrue(is_numeric($expected), t('Parameter is numeric.'));
Но проблема в том, что в модульном тесте функция t()
недоступна. Поэтому я решаю проверить аналогичный модульный тест в core (sortarraytest), и тест не переводит строку:
$this->assertTrue(is_numeric($expected) && is_numeric($result), 'Parameters are numeric.');
Я знаю, что на данный момент у Drupal нет интеграции с модульным тестом из пользовательского интерфейса, но это может быть возможно в будущем, итак:
Должен ли я переводить строку внутри модульного теста? Если ответ "Да", как я могу это сделать?
1 answers
Нет, вы не должны. Сообщение с утверждением в основном находится на том же уровне, что и комментарий к коду, вы его тоже не переводите.
Мы делали это в core, также потому, что тогда все было проще всего, и сообщения были показаны в пользовательском интерфейсе, поэтому можно было привести аргумент, который должен быть переведен. Но мы сделали массивные исправления, чтобы избавиться от этого, это просто добавляет больше сложности без каких-либо дополнительных преимуществ.