⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testrunnerdlg.h

📁 C++中的单元测试类库
💻 H
字号:
#if !defined(AFX_TESTRUNNERDLG_H)#define AFX_TESTRUNNERDLG_H#if _MSC_VER >= 1000#pragma once#endif // _MSC_VER >= 1000// TestRunnerDlg.h : header file///* Refer to MSDN documentation:   mk:@MSITStore:h:\DevStudio\MSDN\98VSa\1036\vcmfc.chm::/html/_mfcnotes_tn033.htm#_mfcnotes_how_to_write_an_mfc_extension_dll   to know how to write and use MFC extension DLL   Can be found in the index with "mfc extension"   =>   Using:   - your application must link  Multithreaded MFC DLL   - memory allocation is done using the same heap   - you must define the symbol _AFX_DLL   Building:   - you must define the symbol _AFX_DLL and _AFX_EXT */// Define the folowing symbol to subclass TestRunnerDlg#ifndef CPPUNIT_SUBCLASSING_TESTRUNNERDLG_BUILD#include "resource.h"#else#define IDD_DIALOG_TESTRUNNER 0#endif#include <vector>#include <cppunit/TestSuite.h>#include <cppunit/Exception.h>#include <cppunit/TestResult.h>#include <cppunit/TestListener.h>#include <cppunit/TestResultCollector.h>#include "ActiveTest.h"#include "MsDevCallerListCtrl.h"#include "TestRunnerModel.h"#include "DynamicWindow/cdxCDynamicDialog.h"class ProgressBar;class TestRunnerModel;/////////////////////////////////////////////////////////////////////////////// TestRunnerDlg dialogclass TestRunnerDlg : public cdxCDynamicDialog,                      public CPPUNIT_NS::TestListener{public:  TestRunnerDlg( TestRunnerModel *model,                int nDialogResourceId,                CWnd* pParent = NULL);  TestRunnerDlg( TestRunnerModel *model,                const TCHAR* szDialogResourceId = NULL,                CWnd* pParent = NULL);  virtual ~TestRunnerDlg();  // overrided from TestListener;  void startTest( CPPUNIT_NS::Test *test );  void addFailure( const CPPUNIT_NS::TestFailure &failure );  void endTest( CPPUNIT_NS::Test *test );  // IDD is not use, it is just there for the wizard.  //{{AFX_DATA(TestRunnerDlg)	CEdit	m_details;  MsDevCallerListCtrl m_listCtrl;  CButton m_buttonClose;  CButton m_buttonStop;  CButton m_buttonRun;  CButton m_buttonBrowse;  BOOL m_bAutorunAtStartup;	//}}AFX_DATA  //{{AFX_VIRTUAL(TestRunnerDlg)public:  virtual BOOL PreTranslateMessage(MSG* pMsg);protected:  virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support  //}}AFX_VIRTUALprotected:  //{{AFX_MSG(TestRunnerDlg)  virtual BOOL OnInitDialog();  afx_msg void OnRun();  afx_msg void OnStop();  virtual void OnOK();  afx_msg void OnBrowseTest();  afx_msg void OnQuitApplication();  afx_msg void OnClose();	afx_msg void OnSize(UINT nType, int cx, int cy);	afx_msg void OnSelectedFailureChange(NMHDR* pNMHDR, LRESULT* pResult);	afx_msg void OnSelectTestInHistoryCombo();	//}}AFX_MSG  DECLARE_MESSAGE_MAP()  typedef std::vector<CPPUNIT_NS::Test *> Tests;  ProgressBar *m_testsProgress;  CPPUNIT_NS::Test *m_selectedTest;  ActiveTest *m_activeTest;  CPPUNIT_NS::TestResult *m_testObserver;  CPPUNIT_NS::TestResultCollector *m_result;  int m_testsRun;  int m_errors;  int m_failures;  DWORD m_testStartTime;  DWORD m_testEndTime;  static const CString ms_cppunitKey;  HACCEL m_hAccelerator;  bool m_bIsRunning;  TestRunnerModel *m_model;  CImageList m_errorListBitmap;  CFont m_fixedSizeFont;  enum ErrorTypeBitmaps  {    errorTypeFailure =0,    errorTypeError  };  void addListEntry( const CPPUNIT_NS::TestFailure &failure );  void beIdle();  void beRunning();  void beRunDisabled();  void reset();  void freeState();  void updateCountsDisplay();  void setupHistoryCombo();  CPPUNIT_NS::Test *findTestByName( std::string name ) const;  CPPUNIT_NS::Test *findTestByNameFor( const std::string &name,                                     CPPUNIT_NS::Test *test ) const;  void addNewTestToHistory( CPPUNIT_NS::Test *test );  void addTestToHistoryCombo( CPPUNIT_NS::Test *test,                               int idx =-1 );  void removeTestFromHistory( CPPUNIT_NS::Test *test );  CComboBox *getHistoryCombo();  void updateSelectedItem();  void saveHistory();  void loadSettings();  void saveSettings();  TestRunnerModel &model();  void updateHistoryCombo();  void displayFailureDetailsFor( unsigned int failureIndex );  CRect getItemWindowRect( unsigned int itemId );  CRect getItemClientRect( unsigned int itemId );  //CRect getDialogBounds();  virtual void initializeLayout();  void updateListColumnSize();  void initializeFixedSizeFont();private:  TestRunnerModel::Settings m_settings;  /// do all initialization, that is usually done in the constructor, so that the  /// code is not duplicated in the two constructors  void TestRunnerDlg::init(TestRunnerModel *model);};//{{AFX_INSERT_LOCATION}}// Microsoft Developer Studio will insert additional declarations immediately before the previous line.#endif // !defined(AFX_TESTRUNNERDLG_H)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -