tagparser/tests/helper.h

53 lines
1.5 KiB
C
Raw Normal View History

#ifndef TAGPARSER_TEST_HELPER
#define TAGPARSER_TEST_HELPER
#include "../diagnostics.h"
2018-03-07 01:17:50 +01:00
#include "../size.h"
#include "../tagvalue.h"
#include <ostream>
2019-06-10 22:49:11 +02:00
namespace CppUtilities {
2017-08-17 18:40:34 +02:00
2018-03-07 01:17:50 +01:00
std::ostream &operator<<(std::ostream &os, const TagParser::TagTextEncoding &encoding);
/*!
* \brief Prints a TagValue UTF-8 encoded to enable CPPUNIT_ASSERT_EQUAL for tag values.
*/
2018-03-07 01:17:50 +01:00
inline std::ostream &operator<<(std::ostream &os, const TagParser::TagValue &tagValue)
{
2018-03-11 22:24:57 +01:00
os << tagValue.toString(TagParser::TagTextEncoding::Utf8);
if (!tagValue.description().empty()) {
os << ", description: " << tagValue.description();
}
return os << " (encoding: " << tagValue.dataEncoding() << ", description encoding: " << tagValue.descriptionEncoding() << ')';
}
2017-06-03 20:38:46 +02:00
/*!
2017-08-17 18:43:19 +02:00
* \brief Prints a PositionInSet to enable using it in CPPUNIT_ASSERT_EQUAL.
2017-06-03 20:38:46 +02:00
*/
2018-03-07 01:17:50 +01:00
inline std::ostream &operator<<(std::ostream &os, const TagParser::PositionInSet &pos)
2017-06-03 20:38:46 +02:00
{
return os << pos.toString();
}
2018-03-06 21:01:43 +01:00
/*!
* \brief Prints a Size to enable using it in CPPUNIT_ASSERT_EQUAL.
*/
2018-03-07 01:17:50 +01:00
inline std::ostream &operator<<(std::ostream &os, const TagParser::Size &size)
2018-03-06 21:01:43 +01:00
{
return os << size.toString();
}
2017-08-17 18:43:19 +02:00
/*!
* \brief Prints a DiagMessage to enable using it in CPPUNIT_ASSERT_EQUAL.
2017-08-17 18:43:19 +02:00
*/
2018-03-07 01:17:50 +01:00
inline std::ostream &operator<<(std::ostream &os, const TagParser::DiagMessage &diagMessage)
2017-08-17 18:43:19 +02:00
{
return os << diagMessage.levelName() << ':' << ' ' << diagMessage.message() << ' ' << '(' << diagMessage.context() << ')';
2017-08-17 18:43:19 +02:00
}
2018-03-07 01:17:50 +01:00
} // namespace TestUtilities
2017-06-03 20:38:46 +02:00
#endif // TAGPARSER_TEST_HELPER