blob: fadf476d7a6910c94b40b4840135585eff49aabf (
plain)
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
|
#include "turns/core/disposition.hpp"
#include <catch2/catch_test_macros.hpp>
#include <catch2/generators/catch_generators.hpp>
#include <glibmm/i18n.h>
#include <glibmm/ustring.h>
#include <format>
#include <limits>
#include <type_traits>
#include <utility>
namespace turns::core::tests
{
TEST_CASE("to_presentation_name returns the correct string for the current language", "[disposition]")
{
auto [value, name] = GENERATE(std::pair{Disposition::Neutral, Glib::ustring{_("Neutral")}},
std::pair{Disposition::Friendly, Glib::ustring{_("Friendly")}},
std::pair{Disposition::Hostile, Glib::ustring{_("Hostile")}},
std::pair{Disposition::Secret, Glib::ustring{_("Secret")}},
std::pair{static_cast<Disposition>(std::numeric_limits<std::underlying_type_t<Disposition>>::max()),
Glib::ustring{_("Unknown disposition value")}});
SECTION(std::format("the presentation name for '{}' is '{}'", static_cast<std::underlying_type_t<Disposition>>(value), name.c_str()))
{
REQUIRE(presentation_name_for(value) == name);
}
}
} // namespace turns::core::tests
|