1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
#include "turns/lang/messages.hpp"
#include <catch2/catch_test_macros.hpp>
#include <catch2/generators/catch_generators.hpp>
#include <format>
#include <string>
#include <libintl.h>
namespace turns::lang::tests
{
TEST_CASE("Translated messages")
{
auto message = GENERATE(
add_participant,
disposition,
delete_participant,
edit_participant,
finish,
main_menu,
mark_as_defeated,
// name, a better solution is required to test this entry.
no_active_turn_order,
priority,
priority_number,
quit,
start_turn_order,
turns
);
auto locale = GENERATE("de_CH.UTF-8", "de_DE.UTF-8", "de_AT.UTF-8");
SECTION(std::format("'{}' has a translation in '{}'", message, locale))
{
setlocale(LC_ALL, locale);
REQUIRE(std::string{gettext(message)} != message);
}
}
} // namespace turns::lang::tests
|