Trong phiên bản trước của Google Mock, bạn chỉ có thể thử chức năng ảo, xem documentation trong trang của dự án.
Các phiên bản gần đây khác được phép giả lập non-virtual methods, sử dụng những gì họ gọi là tiêm phụ thuộc hi-perf.
Như congusbongus
trạng thái:
Google Mock dựa vào thêm các biến thành viên để hỗ trợ phương pháp chế nhạo, và kể từ khi bạn không thể tạo ra các biến mẫu thành viên, nó không thể chức năng mẫu mock
Một workaround, bởi Michael Harrington trong liên kết googlegroups từ các ý kiến, là để làm cho chuyên ngành các phương pháp mẫu mà sẽ gọi một chức năng bình thường có thể được chế giễu. Nó không giải quyết được trường hợp chung nhưng nó sẽ hoạt động để thử nghiệm.
struct Foo
{
MOCK_METHOD1(GetValueString, void(std::string& value));
template <typename ValueType>
void GetValue(ValueType& value);
template <>
void GetValue(std::string& value) {
GetValueString(value);
}
};
xin lỗi vì vô ích, nhưng tôi là người duy nhất, khi anh ấy thấy câu hỏi như thế này, có bản năng đầu tiên để trả lời "Bạn là một mẫu ngu ngốc! một mẫu ngu ngốc ngu ngốc như thế? " –
Cảm ơn bạn đã bình luận của bạn Brian ... Mã nguồn bạn thấy là một phần của một lớp học lớn hơn. Mẫu này không ngu ngốc như vậy ... –
http://www.merriam-webster.com/dictionary/mock: để đối xử với sự khinh miệt hoặc nhạo báng –