format/quoted: avoid vformat for tests

This commit is contained in:
Danny Robson 2023-11-19 09:38:41 +10:00
parent 2f2dfd1423
commit 6f17da5e59

View File

@ -2,28 +2,27 @@
#include <cruft/util/tap.hpp>
#include <fmt/format.h>
int main ()
{
static constexpr struct {
std::string_view format;
std::string_view inner;
std::string_view result;
std::string_view message;
} TESTS[] = {
{ "{}", "Foo", R"("Foo")", "Simple word" },
{ "{}", "F\"oo", R"("F\"oo")", "Embedded delim" },
{ "{}", "F\\oo", R"("F\\oo")", "Embedded escape" },
{ "Foo", R"("Foo")", "Simple word" },
{ "F\"oo", R"("F\"oo")", "Embedded delim" },
{ "F\\oo", R"("F\\oo")", "Embedded escape" },
};
cruft::TAP::logger tap;
for (auto const &t: TESTS) {
auto const result = fmt::vformat (
t.format,
fmt::make_format_args (
cruft::format::quoted (t.inner)
)
auto const result = fmt::format (
"{}",
cruft::format::quoted (t.inner)
);
tap.expect_eq (result, t.result, "quoted format: {}", t.message);
}