tags with . prefix are all hidden

This commit is contained in:
Phil Nash 2014-12-15 07:25:34 +00:00
parent 6725e09003
commit 0dd214f6db
2 changed files with 9 additions and 8 deletions

View File

@ -30,7 +30,7 @@ namespace Catch {
return TestCaseInfo::None; return TestCaseInfo::None;
} }
inline bool isReservedTag( std::string const& tag ) { inline bool isReservedTag( std::string const& tag ) {
return parseSpecialTag( tag ) == TestCaseInfo::None && tag.size() > 0 && !isalnum( tag[0] ); return TestCaseInfo::None && tag.size() > 0 && !isalnum( tag[0] );
} }
inline void enforceNotReservedTag( std::string const& tag, SourceLineInfo const& _lineInfo ) { inline void enforceNotReservedTag( std::string const& tag, SourceLineInfo const& _lineInfo ) {
if( isReservedTag( tag ) ) { if( isReservedTag( tag ) ) {
@ -70,14 +70,15 @@ namespace Catch {
} }
else { else {
if( c == ']' ) { if( c == ']' ) {
enforceNotReservedTag( tag, _lineInfo ); TestCaseInfo::SpecialProperties prop = parseSpecialTag( tag );
if( prop == TestCaseInfo::IsHidden )
inTag = false;
if( tag == "hide" || tag == "." )
isHidden = true; isHidden = true;
else else if( prop == TestCaseInfo::None )
tags.insert( tag ); enforceNotReservedTag( tag, _lineInfo );
tags.insert( tag );
tag.clear(); tag.clear();
inTag = false;
} }
else else
tag += c; tag += c;

View File

@ -348,7 +348,7 @@ private:
}; };
// !TBD: This will be folded into Text class // !TBD: This will be folded into Text class
TEST_CASE( "Strings can be rendered with colour", "[colour][.]" ) { TEST_CASE( "Strings can be rendered with colour", "[.colour]" ) {
{ {
ColourString cs( "hello" ); ColourString cs( "hello" );