From c2675b5d49fe566a3ec6dc402079b7975fe9f96b Mon Sep 17 00:00:00 2001 From: Phil Nash Date: Thu, 23 Aug 2012 08:38:27 +0100 Subject: [PATCH] Added copy actor and operator = back to TestCaseInfo --- include/internal/catch_test_case_info.h | 2 ++ include/internal/catch_test_case_info.hpp | 12 ++++++++++++ 2 files changed, 14 insertions(+) diff --git a/include/internal/catch_test_case_info.h b/include/internal/catch_test_case_info.h index 5e5a64d..b7b9bc5 100644 --- a/include/internal/catch_test_case_info.h +++ b/include/internal/catch_test_case_info.h @@ -27,6 +27,7 @@ namespace Catch { TestCaseInfo( const TestCaseInfo& other, const std::string& name ); + TestCaseInfo( const TestCaseInfo& other ); void invoke() const; const std::string& getName() const; @@ -37,6 +38,7 @@ namespace Catch { void swap( TestCaseInfo& other ); bool operator == ( const TestCaseInfo& other ) const; bool operator < ( const TestCaseInfo& other ) const; + TestCaseInfo& operator = ( const TestCaseInfo& other ); private: Ptr m_test; diff --git a/include/internal/catch_test_case_info.hpp b/include/internal/catch_test_case_info.hpp index ab6ec78..51258a7 100644 --- a/include/internal/catch_test_case_info.hpp +++ b/include/internal/catch_test_case_info.hpp @@ -36,6 +36,13 @@ namespace Catch { 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 { m_test->invoke(); } @@ -70,6 +77,11 @@ namespace Catch { bool TestCaseInfo::operator < ( const TestCaseInfo& other ) const { 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