mirror of
https://github.com/catchorg/Catch2.git
synced 2024-11-04 05:09:53 +01:00
Moved TestSpec into its own file
This commit is contained in:
parent
ddfe963623
commit
d0a5461add
@ -17,6 +17,7 @@
|
|||||||
#include "catch_capture.hpp"
|
#include "catch_capture.hpp"
|
||||||
#include "catch_totals.hpp"
|
#include "catch_totals.hpp"
|
||||||
#include "catch_running_test.hpp"
|
#include "catch_running_test.hpp"
|
||||||
|
#include "catch_test_spec.h"
|
||||||
|
|
||||||
#include <set>
|
#include <set>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
@ -44,32 +44,6 @@ namespace Catch {
|
|||||||
std::string m_description;
|
std::string m_description;
|
||||||
SourceLineInfo m_lineInfo;
|
SourceLineInfo m_lineInfo;
|
||||||
};
|
};
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
class TestSpec {
|
|
||||||
public:
|
|
||||||
TestSpec( const std::string& rawSpec )
|
|
||||||
: m_rawSpec( rawSpec ),
|
|
||||||
m_isWildcarded( false ) {
|
|
||||||
|
|
||||||
if( m_rawSpec[m_rawSpec.size()-1] == '*' ) {
|
|
||||||
m_rawSpec = m_rawSpec.substr( 0, m_rawSpec.size()-1 );
|
|
||||||
m_isWildcarded = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool matches ( const std::string& testName ) const {
|
|
||||||
if( !m_isWildcarded )
|
|
||||||
return m_rawSpec == testName;
|
|
||||||
else
|
|
||||||
return testName.size() >= m_rawSpec.size() && testName.substr( 0, m_rawSpec.size() ) == m_rawSpec;
|
|
||||||
}
|
|
||||||
|
|
||||||
private:
|
|
||||||
std::string m_rawSpec;
|
|
||||||
bool m_isWildcarded;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // TWOBLUECUBES_CATCH_TESTCASEINFO_H_INCLUDED
|
#endif // TWOBLUECUBES_CATCH_TESTCASEINFO_H_INCLUDED
|
||||||
|
40
include/internal/catch_test_spec.h
Normal file
40
include/internal/catch_test_spec.h
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
/*
|
||||||
|
* Created by Phil on 14/8/2012.
|
||||||
|
* Copyright 2010 Two Blue Cubes Ltd. All rights reserved.
|
||||||
|
*
|
||||||
|
* Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||||
|
* file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
||||||
|
*/
|
||||||
|
#ifndef TWOBLUECUBES_CATCH_TESTSPEC_H_INCLUDED
|
||||||
|
#define TWOBLUECUBES_CATCH_TESTSPEC_H_INCLUDED
|
||||||
|
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
namespace Catch {
|
||||||
|
|
||||||
|
class TestSpec {
|
||||||
|
public:
|
||||||
|
TestSpec( const std::string& rawSpec )
|
||||||
|
: m_rawSpec( rawSpec ),
|
||||||
|
m_isWildcarded( false ) {
|
||||||
|
|
||||||
|
if( m_rawSpec[m_rawSpec.size()-1] == '*' ) {
|
||||||
|
m_rawSpec = m_rawSpec.substr( 0, m_rawSpec.size()-1 );
|
||||||
|
m_isWildcarded = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bool matches ( const std::string& testName ) const {
|
||||||
|
if( !m_isWildcarded )
|
||||||
|
return m_rawSpec == testName;
|
||||||
|
else
|
||||||
|
return testName.size() >= m_rawSpec.size() && testName.substr( 0, m_rawSpec.size() ) == m_rawSpec;
|
||||||
|
}
|
||||||
|
|
||||||
|
private:
|
||||||
|
std::string m_rawSpec;
|
||||||
|
bool m_isWildcarded;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif // TWOBLUECUBES_CATCH_TESTSPEC_H_INCLUDED
|
@ -35,6 +35,7 @@
|
|||||||
|
|
||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
4A084F1C15DACEEA0027E631 /* catch_test_case_info.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = catch_test_case_info.hpp; sourceTree = "<group>"; };
|
4A084F1C15DACEEA0027E631 /* catch_test_case_info.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = catch_test_case_info.hpp; sourceTree = "<group>"; };
|
||||||
|
4A084F1D15DAD15F0027E631 /* catch_test_spec.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = catch_test_spec.h; sourceTree = "<group>"; };
|
||||||
4A3D7DD01503869D005F9203 /* catch_matchers.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = catch_matchers.hpp; sourceTree = "<group>"; };
|
4A3D7DD01503869D005F9203 /* catch_matchers.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = catch_matchers.hpp; sourceTree = "<group>"; };
|
||||||
4A4B0F9715CE6CFB00AE2392 /* catch_registry_hub.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; lineEnding = 0; path = catch_registry_hub.hpp; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.cpp; };
|
4A4B0F9715CE6CFB00AE2392 /* catch_registry_hub.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; lineEnding = 0; path = catch_registry_hub.hpp; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.cpp; };
|
||||||
4A4B0F9915CE6EC100AE2392 /* catch_interfaces_registry_hub.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = catch_interfaces_registry_hub.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
|
4A4B0F9915CE6EC100AE2392 /* catch_interfaces_registry_hub.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = catch_interfaces_registry_hub.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
|
||||||
@ -260,6 +261,7 @@
|
|||||||
4A7ADB4314F631E10094FE10 /* catch_totals.hpp */,
|
4A7ADB4314F631E10094FE10 /* catch_totals.hpp */,
|
||||||
4AB77CB71553B72B00857BF0 /* catch_section_info.hpp */,
|
4AB77CB71553B72B00857BF0 /* catch_section_info.hpp */,
|
||||||
4AB77CB81553BB3800857BF0 /* catch_running_test.hpp */,
|
4AB77CB81553BB3800857BF0 /* catch_running_test.hpp */,
|
||||||
|
4A084F1D15DAD15F0027E631 /* catch_test_spec.h */,
|
||||||
);
|
);
|
||||||
name = "Test execution";
|
name = "Test execution";
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
|
Loading…
Reference in New Issue
Block a user