mirror of
				https://github.com/catchorg/Catch2.git
				synced 2025-10-31 20:27:11 +01:00 
			
		
		
		
	Fixed issue with wildcards at the start of a string
This commit is contained in:
		| @@ -36,7 +36,7 @@ namespace Catch { | ||||
|         public: | ||||
|             NamePattern( std::string const& name ) : m_name( toLower( name ) ), m_wildcard( NoWildcard ) { | ||||
|                 if( startsWith( m_name, "*" ) ) { | ||||
|                     m_name = name.substr( 1 ); | ||||
|                     m_name = m_name.substr( 1 ); | ||||
|                     m_wildcard = WildcardAtStart; | ||||
|                 } | ||||
|                 if( endsWith( m_name, "*" ) ) { | ||||
|   | ||||
| @@ -92,6 +92,32 @@ TEST_CASE( "Parse test names and tags", "" ) { | ||||
|         CHECK( spec.matches( tcD ) == true ); | ||||
|         CHECK( parseTestSpec( "*a*" ).matches( tcA ) == true ); | ||||
|     } | ||||
|     SECTION( "Redundant wildcard at the start" ) { | ||||
|         TestSpec spec = parseTestSpec( "*a" ); | ||||
|         CHECK( spec.hasFilters() == true ); | ||||
|         CHECK( spec.matches( tcA ) == true ); | ||||
|         CHECK( spec.matches( tcB ) == false ); | ||||
|     } | ||||
|     SECTION( "Redundant wildcard at the end" ) { | ||||
|         TestSpec spec = parseTestSpec( "a*" ); | ||||
|         CHECK( spec.hasFilters() == true ); | ||||
|         CHECK( spec.matches( tcA ) == true ); | ||||
|         CHECK( spec.matches( tcB ) == false ); | ||||
|     } | ||||
|     SECTION( "Redundant wildcard at both ends" ) { | ||||
|         TestSpec spec = parseTestSpec( "*a*" ); | ||||
|         CHECK( spec.hasFilters() == true ); | ||||
|         CHECK( spec.matches( tcA ) == true ); | ||||
|         CHECK( spec.matches( tcB ) == false ); | ||||
|     } | ||||
|     SECTION( "Wildcard at both ends, redundant at start" ) { | ||||
|         TestSpec spec = parseTestSpec( "*longer*" ); | ||||
|         CHECK( spec.hasFilters() == true ); | ||||
|         CHECK( spec.matches( tcA ) == false ); | ||||
|         CHECK( spec.matches( tcB ) == false ); | ||||
|         CHECK( spec.matches( tcC ) == true ); | ||||
|         CHECK( spec.matches( tcD ) == true ); | ||||
|     } | ||||
|     SECTION( "Just wildcard" ) { | ||||
|         TestSpec spec = parseTestSpec( "*" ); | ||||
|         CHECK( spec.hasFilters() == true ); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Phil Nash
					Phil Nash