catchorg / catchorg/Catch2

Configure and disable word wrap in console reporter

Open
#1,348 9 comments 10 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
21.5k
Forks
3.5k
Avg merge
3d 16h
Merged PRs (30d)
2

Description

Right now the console reporter hard-codes the column width to 80 (default determined by Clara):

```cpp
void printMessage() const {
if (!messageLabel.empty())
stream << messageLabel << ':' << '\n';
for (auto const& msg : messages) {
// If this assertion is a warning ignore any INFO messages
if (printInfoMessages || msg.type != ResultWas::Info)
stream << Column(msg.message).indent(2) << '\n';
}
}
```

I'd like for each message to be printed with a custom column width, or no column width (disable word wrap). Is there a mechanism to do this right now? If not, what would be the best way to configure this? Looking for an ideal design approach and am happy to implement it.

@philsquared Please advise on your ideal design, I don't want to waste effort on a PR if I don't do things how you prefer them to be. Thanks.

Contributor guide

Open the contributing guide

Research direction

Start by locating the console reporter's printMessage implementation and the Column type used in the shown snippet. Check whether existing reporter configuration or command-line options already control formatting; done means establishing a maintainer-approved design for custom or disabled wrapping and covering the resulting behavior with tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
testing
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.