Fix a libc++ warning and move the test to the right place
This commit is contained in:
parent
c3f9a73445
commit
c4283ec471
@ -246,13 +246,6 @@ TEST(format_impl_test, format_error_code) {
|
||||
}
|
||||
}
|
||||
|
||||
TEST(format_impl_test, compute_width) {
|
||||
EXPECT_EQ(4,
|
||||
fmt::detail::compute_width(
|
||||
fmt::basic_string_view<fmt::detail::char8_type>(
|
||||
reinterpret_cast<const fmt::detail::char8_type*>("ёжик"))));
|
||||
}
|
||||
|
||||
// Tests fmt::detail::count_digits for integer type Int.
|
||||
template <typename Int> void test_count_digits() {
|
||||
for (Int i = 0; i < 10; ++i) EXPECT_EQ(1u, fmt::detail::count_digits(i));
|
||||
|
@ -173,6 +173,10 @@ TEST(util_test, parse_nonnegative_int) {
|
||||
EXPECT_EQ(fmt::detail::parse_nonnegative_int(begin, end, -1), -1);
|
||||
}
|
||||
|
||||
TEST(format_impl_test, compute_width) {
|
||||
EXPECT_EQ(fmt::detail::compute_width("вожык"), 5);
|
||||
}
|
||||
|
||||
TEST(util_test, utf8_to_utf16) {
|
||||
auto u = fmt::detail::utf8_to_utf16("лошадка");
|
||||
EXPECT_EQ(L"\x043B\x043E\x0448\x0430\x0434\x043A\x0430", u.str());
|
||||
@ -1053,6 +1057,12 @@ TEST(format_test, precision) {
|
||||
EXPECT_EQ("123456", fmt::format("{0:.6}", "123456\xad"));
|
||||
}
|
||||
|
||||
TEST(xchar_test, utf8_precision) {
|
||||
auto result = fmt::format("{:.4}", "caf\u00e9s"); // cafés
|
||||
EXPECT_EQ(fmt::detail::compute_width(result), 4);
|
||||
EXPECT_EQ(result, "caf\u00e9");
|
||||
}
|
||||
|
||||
TEST(format_test, runtime_precision) {
|
||||
char format_str[buffer_size];
|
||||
safe_sprintf(format_str, "{0:.{%u", UINT_MAX);
|
||||
|
@ -187,18 +187,6 @@ template <typename S> std::string from_u8str(const S& str) {
|
||||
return std::string(str.begin(), str.end());
|
||||
}
|
||||
|
||||
TEST(xchar_test, format_utf8_precision) {
|
||||
using str_type = std::basic_string<fmt::detail::char8_type>;
|
||||
auto format =
|
||||
str_type(reinterpret_cast<const fmt::detail::char8_type*>(u8"{:.4}"));
|
||||
auto str = str_type(reinterpret_cast<const fmt::detail::char8_type*>(
|
||||
u8"caf\u00e9s")); // cafés
|
||||
auto result = fmt::format(format, str);
|
||||
EXPECT_EQ(fmt::detail::compute_width(result), 4);
|
||||
EXPECT_EQ(result.size(), 5);
|
||||
EXPECT_EQ(from_u8str(result), from_u8str(str.substr(0, 5)));
|
||||
}
|
||||
|
||||
TEST(xchar_test, format_to) {
|
||||
auto buf = std::vector<wchar_t>();
|
||||
fmt::format_to(std::back_inserter(buf), L"{}{}", 42, L'\0');
|
||||
|
Loading…
Reference in New Issue
Block a user