Skip to content

Commit

Permalink
レビューコメントを反映
Browse files Browse the repository at this point in the history
* 仮想メンバ関数を const にした。
* 仮想メンバ関数の宣言部に目的を説明するコメントを追加した。
  • Loading branch information
kengoide committed Feb 14, 2022
1 parent eca61cc commit d2a0f72
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 13 deletions.
8 changes: 4 additions & 4 deletions sakura_core/_os/CClipboard.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -674,18 +674,18 @@ int CClipboard::GetDataType()
return -1;
}

HANDLE CClipboard::SetClipboardData(UINT uFormat, HANDLE hMem) {
HANDLE CClipboard::SetClipboardData(UINT uFormat, HANDLE hMem) const {
return ::SetClipboardData(uFormat, hMem);
}

HANDLE CClipboard::GetClipboardData(UINT uFormat) {
HANDLE CClipboard::GetClipboardData(UINT uFormat) const {
return ::GetClipboardData(uFormat);
}

BOOL CClipboard::EmptyClipboard() {
BOOL CClipboard::EmptyClipboard() const {
return ::EmptyClipboard();
}

BOOL CClipboard::IsClipboardFormatAvailable(UINT format) {
BOOL CClipboard::IsClipboardFormatAvailable(UINT format) const {
return ::IsClipboardFormatAvailable(format);
}
13 changes: 8 additions & 5 deletions sakura_core/_os/CClipboard.h
Original file line number Diff line number Diff line change
Expand Up @@ -68,11 +68,14 @@ class CClipboard{
static int GetDataType(); //!< クリップボードデータ形式(CF_UNICODETEXT等)の取得

protected:
// 単体テスト用
// 単体テスト用コンストラクタ
explicit CClipboard(bool openStatus) : m_bOpenResult(openStatus) {}
virtual HANDLE SetClipboardData(UINT uFormat, HANDLE hMem);
virtual HANDLE GetClipboardData(UINT uFormat);
virtual BOOL EmptyClipboard();
virtual BOOL IsClipboardFormatAvailable(UINT format);

// 同名の Windows API に引数を転送する仮想メンバ関数。
// 単体テスト内でオーバーライドすることで副作用のないテストを実施するのが目的。
virtual HANDLE SetClipboardData(UINT uFormat, HANDLE hMem) const;
virtual HANDLE GetClipboardData(UINT uFormat) const;
virtual BOOL EmptyClipboard() const;
virtual BOOL IsClipboardFormatAvailable(UINT format) const;
};
#endif /* SAKURA_CCLIPBOARD_4E783022_214C_4E51_A2E0_54EC343500F6_H_ */
8 changes: 4 additions & 4 deletions tests/unittests/test-cclipboard.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -211,10 +211,10 @@ class MockCClipboard : public CClipboard {
public:
MockCClipboard(bool openStatus = true) : CClipboard(openStatus) {}
~MockCClipboard() override {}
MOCK_METHOD2(SetClipboardData, HANDLE (UINT, HANDLE));
MOCK_METHOD1(GetClipboardData, HANDLE (UINT));
MOCK_METHOD0(EmptyClipboard, BOOL ());
MOCK_METHOD1(IsClipboardFormatAvailable, BOOL (UINT));
MOCK_CONST_METHOD2(SetClipboardData, HANDLE (UINT, HANDLE));
MOCK_CONST_METHOD1(GetClipboardData, HANDLE (UINT));
MOCK_CONST_METHOD0(EmptyClipboard, BOOL ());
MOCK_CONST_METHOD1(IsClipboardFormatAvailable, BOOL (UINT));
};

// Empty のテスト。
Expand Down

0 comments on commit d2a0f72

Please sign in to comment.