📄 messagetest.cpp
字号:
#include "CoreSuite.h"#include "MessageTest.h"CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( MessageTest, coreSuiteName() );MessageTest::MessageTest(){}MessageTest::~MessageTest(){}void MessageTest::setUp(){ m_message = new CPPUNIT_NS::Message();}void MessageTest::tearDown(){ delete m_message;}void MessageTest::testDefaultConstructor(){ std::string empty; CPPUNIT_ASSERT_EQUAL( empty, m_message->shortDescription() ); CPPUNIT_ASSERT_EQUAL( 0, m_message->detailCount() );}void MessageTest::testDetailAtThrowIfBadIndex(){ m_message->detailAt( -1 );}void MessageTest::testDetailAtThrowIfBadIndex2(){ m_message->detailAt( 0 );}void MessageTest::testAddDetail(){ std::string expected( "first" ); m_message->addDetail( expected ); CPPUNIT_ASSERT_EQUAL( 1, m_message->detailCount() ); CPPUNIT_ASSERT_EQUAL( expected, m_message->detailAt(0) );}void MessageTest::testAddDetail2(){ std::string expected1( "first" ); std::string expected2( "second" ); m_message->addDetail( expected1, expected2 ); CPPUNIT_ASSERT_EQUAL( 2, m_message->detailCount() ); CPPUNIT_ASSERT_EQUAL( expected1, m_message->detailAt(0) ); CPPUNIT_ASSERT_EQUAL( expected2, m_message->detailAt(1) );}void MessageTest::testAddDetail3(){ std::string expected1( "first" ); std::string expected2( "second" ); std::string expected3( "third" ); m_message->addDetail( expected1, expected2, expected3 ); CPPUNIT_ASSERT_EQUAL( 3, m_message->detailCount() ); CPPUNIT_ASSERT_EQUAL( expected1, m_message->detailAt(0) ); CPPUNIT_ASSERT_EQUAL( expected2, m_message->detailAt(1) ); CPPUNIT_ASSERT_EQUAL( expected3, m_message->detailAt(2) );}void MessageTest::testAddDetailEmptyMessage(){ m_message->addDetail( CPPUNIT_NS::Message() ); CPPUNIT_ASSERT_EQUAL( 0, m_message->detailCount() );}void MessageTest::testAddDetailMessage(){ std::string expected1( "first" ); std::string expected2( "second" ); m_message->addDetail( CPPUNIT_NS::Message( "shortDesc", expected1, expected2 ) ); CPPUNIT_ASSERT_EQUAL( 2, m_message->detailCount() ); CPPUNIT_ASSERT_EQUAL( expected1, m_message->detailAt(0) ); CPPUNIT_ASSERT_EQUAL( expected2, m_message->detailAt(1) );}void MessageTest::testSetShortDescription(){ std::string expected( "shortDesc" ); m_message->setShortDescription( expected ); CPPUNIT_ASSERT_EQUAL( expected, m_message->shortDescription() );}void MessageTest::testClearDetails(){ m_message->addDetail( "detail1" ); m_message->clearDetails(); CPPUNIT_ASSERT_EQUAL( 0, m_message->detailCount() );}void MessageTest::testConstructor(){ std::string expected( "short" ); CPPUNIT_NS::Message message( expected ); CPPUNIT_ASSERT_EQUAL( expected, message.shortDescription() ); CPPUNIT_ASSERT_EQUAL( 0, message.detailCount() );}void MessageTest::testConstructorDetail1(){ std::string expected( "short" ); std::string expected1( "detail-1" ); CPPUNIT_NS::Message message( expected, expected1 ); CPPUNIT_ASSERT_EQUAL( expected, message.shortDescription() ); CPPUNIT_ASSERT_EQUAL( 1, message.detailCount() ); CPPUNIT_ASSERT_EQUAL( expected1, message.detailAt(0) );}void MessageTest::testConstructorDetail2(){ std::string expected( "short" ); std::string expected1( "detail-1" ); std::string expected2( "detail-2" ); CPPUNIT_NS::Message message( expected, expected1, expected2 ); CPPUNIT_ASSERT_EQUAL( expected, message.shortDescription() ); CPPUNIT_ASSERT_EQUAL( 2, message.detailCount() ); CPPUNIT_ASSERT_EQUAL( expected1, message.detailAt(0) ); CPPUNIT_ASSERT_EQUAL( expected2, message.detailAt(1) );}void MessageTest::testConstructorDetail3(){ std::string expected( "short" ); std::string expected1( "detail-1" ); std::string expected2( "detail-2" ); std::string expected3( "detail-3" ); CPPUNIT_NS::Message message( expected, expected1, expected2, expected3 ); CPPUNIT_ASSERT_EQUAL( expected, message.shortDescription() ); CPPUNIT_ASSERT_EQUAL( 3, message.detailCount() ); CPPUNIT_ASSERT_EQUAL( expected1, message.detailAt(0) ); CPPUNIT_ASSERT_EQUAL( expected2, message.detailAt(1) ); CPPUNIT_ASSERT_EQUAL( expected3, message.detailAt(2) );}void MessageTest::testDetailsNone(){ CPPUNIT_ASSERT_MESSAGE("012345678901234",true); std::string empty; CPPUNIT_ASSERT_EQUAL( empty, m_message->details() );}void MessageTest::testDetailsSome(){ m_message->addDetail( "Expected: 1", "Actual: 7", "Info: number" ); std::string expected( "- Expected: 1\n- Actual: 7\n- Info: number\n" ); std::string actual = m_message->details(); CPPUNIT_ASSERT_EQUAL( expected, actual );}void MessageTest::testEqual(){ CPPUNIT_ASSERT( *m_message == CPPUNIT_NS::Message() ); CPPUNIT_NS::Message message1( "short", "det1", "det2", "det3" ); CPPUNIT_NS::Message message2( message1 ); CPPUNIT_ASSERT( message1 == message2 ); CPPUNIT_ASSERT( !(*m_message == message1) ); CPPUNIT_NS::Message message3( "short" ); CPPUNIT_ASSERT( !(message3 == message1) ); CPPUNIT_NS::Message message4( "long" ); CPPUNIT_ASSERT( !(message3 == message4) ); CPPUNIT_NS::Message message5( "short", "det1", "det-2", "det3" ); CPPUNIT_ASSERT( !(message1 == message5) );}void MessageTest::testNotEqual(){ CPPUNIT_NS::Message message1( "short", "det1", "det2", "det3" ); CPPUNIT_NS::Message message2( "short", "det1", "det-2", "det3" ); CPPUNIT_ASSERT( message1 != message2 ); CPPUNIT_ASSERT( !(message1 != message1) );}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -