Opened 13 years ago
Closed 6 years ago
#3616 closed Bugs (invalid)
Boost.Test Xcode formatter not working in Xcode 3.2
Reported by: | Owned by: | Gennadiy Rozental | |
---|---|---|---|
Milestone: | Boost 1.41.0 | Component: | test |
Version: | Boost 1.40.0 | Severity: | Problem |
Keywords: | Cc: |
Description
The build result format has changed to: [file path]:[line]: {warning|error}: [whatever] e.g. /path/to/source.cpp:42: error: something bad happened!
Right now, the formatter outputs [file path]:[line]: [whatever]
The "warning: " or "error: " is missing, so the issue is not properly displayed in Xcode
Possible solution:
- move Apple-specific code to log_entry_start e.g.:
void log_entry_start( std::ostream& output, boost::unit_test::log_entry_data const& entry_data, log_entry_types let ) {
switch( let ) {
...
case BOOST_UTL_ET_WARNING:
#ifdef APPLE_CC
output << file << ':' << line << ": warning: ";
#endif
print_prefix( output, entry_data.m_file_name, entry_data.m_line_num ); output << "warning in \"" << boost::unit_test::framework::current_test_case().p_name << "\": "; break;
case BOOST_UTL_ET_ERROR:
#ifdef APPLE_CC
output << file << ':' << line << ": error: ";
#endif
print_prefix( output, entry_data.m_file_name, entry_data.m_line_num ); output << "error in \"" << boost::unit_test::framework::current_test_case().p_name << "\": "; break;
...
I don't know what to do about "info" and "fatal error," because I don't know if there are corresponding levels in Xcode, but I'm posting the question to the Xcode users list.
Change History (4)
comment:1 by , 13 years ago
comment:2 by , 13 years ago
Am I correct to understand that the only issue is absence of ':' in between error|warning and 'in' in messages. For example: file:line: error: in <test_case> ... would have worked?
comment:3 by , 13 years ago
Yes, I think we actually want to insert "error: " and have "error" twice, as Xcode will eat the first one and keep the message intact - "file:line: error: error in <test_case>"
The only other issue is how to map info and fatal error. It seems fair to map info to warning and fatal error to error, so they would be:
file:line: warning: info from <test_case>
file:line: error: fatal error in <test_case>
comment:4 by , 6 years ago
Resolution: | → invalid |
---|---|
Status: | new → closed |
New versions of Xcode do not have this feature anymore
sorry... above lines: output << file << ':' << line <<... should be: output << entry_data.m_file_name << ':' << entry_data.m_line_num <<...