Added copy actor and operator = back to TestCaseInfo

This commit is contained in:
Phil Nash 2012-08-23 08:38:27 +01:00
parent d5fbe2ec5d
commit c2675b5d49
2 changed files with 14 additions and 0 deletions

View File

@ -27,6 +27,7 @@ namespace Catch {
TestCaseInfo( const TestCaseInfo& other, const std::string& name ); TestCaseInfo( const TestCaseInfo& other, const std::string& name );
TestCaseInfo( const TestCaseInfo& other );
void invoke() const; void invoke() const;
const std::string& getName() const; const std::string& getName() const;
@ -37,6 +38,7 @@ namespace Catch {
void swap( TestCaseInfo& other ); void swap( TestCaseInfo& other );
bool operator == ( const TestCaseInfo& other ) const; bool operator == ( const TestCaseInfo& other ) const;
bool operator < ( const TestCaseInfo& other ) const; bool operator < ( const TestCaseInfo& other ) const;
TestCaseInfo& operator = ( const TestCaseInfo& other );
private: private:
Ptr<ITestCase> m_test; Ptr<ITestCase> m_test;

View File

@ -36,6 +36,13 @@ namespace Catch {
m_lineInfo( other.m_lineInfo ) m_lineInfo( other.m_lineInfo )
{} {}
TestCaseInfo::TestCaseInfo( const TestCaseInfo& other )
: m_test( other.m_test ),
m_name( other.m_name ),
m_description( other.m_description ),
m_lineInfo( other.m_lineInfo )
{}
void TestCaseInfo::invoke() const { void TestCaseInfo::invoke() const {
m_test->invoke(); m_test->invoke();
} }
@ -70,6 +77,11 @@ namespace Catch {
bool TestCaseInfo::operator < ( const TestCaseInfo& other ) const { bool TestCaseInfo::operator < ( const TestCaseInfo& other ) const {
return m_name < other.m_name; return m_name < other.m_name;
} }
TestCaseInfo& TestCaseInfo::operator = ( const TestCaseInfo& other ) {
TestCaseInfo temp( other );
swap( temp );
return *this;
}
} }
#endif // TWOBLUECUBES_CATCH_TESTCASEINFO_HPP_INCLUDED #endif // TWOBLUECUBES_CATCH_TESTCASEINFO_HPP_INCLUDED