如何检索或打印"Catch"信息记录缓冲区?

How to retrieve or print "Catch" info logging buffers?

本文关键字:Catch 信息 记录 缓冲区 打印 何检索 检索      更新时间:2023-10-16

使用Catch单包含单元测试器,我有(通过)这样的测试

TEST_CASE ("sizes", "[metadata]" ) {
    INFO ( "The number is " << 42 );
    REQUIRE (sizeof(some_struct) == 16);
}

文档(上面的链接)指出INFO被记录到缓冲区,但我还没有弄清楚如何转储或以其他方式检索缓冲区。该消息没有打印到我的控制台,但我printf或推入coutcerror的其他内容确实打印,因此我的I/o设置正确。我试着阅读源代码以找出消息存放的位置,但它太大且复杂。我想知道是否有人恰好知道如何检索这些信息?

看起来这是预期的行为:INFO仅在失败时报告。看到https://github.com/philsquared/Catch/issues/290