gmocktest.cc 453 B

12345678910111213141516171819202122232425262728
  1. #include<gtest/gtest.h>
  2. #include<gmock/gmock.h>
  3. using ::testing::Return;
  4. class Foo {
  5. public:
  6. Foo() { x = 42; }
  7. virtual ~Foo() {};
  8. virtual int getValue() const { return x; }
  9. private:
  10. int x;
  11. };
  12. class MockFoo : public Foo {
  13. public:
  14. MOCK_CONST_METHOD0(getValue, int());
  15. };
  16. TEST(counttest, once) {
  17. MockFoo f;
  18. EXPECT_CALL(f, getValue()).Times(1).WillOnce(Return(42));
  19. EXPECT_EQ(f.getValue(), 42) << "Got wrong value";
  20. }