|
|
|
@ -2784,7 +2784,7 @@ If you just need to return a pre-defined move-only value, you can use the |
|
|
|
|
// When this fires, the unique_ptr<> specified by ByMove(...) will |
|
|
|
|
// be returned. |
|
|
|
|
EXPECT_CALL(mock_buzzer_, MakeBuzz("world")) |
|
|
|
|
.WillOnce(Return(ByMove(MakeUnique<Buzz>(AccessLevel::kInternal)))); |
|
|
|
|
.WillOnce(Return(ByMove(std::make_unique<Buzz>(AccessLevel::kInternal)))); |
|
|
|
|
|
|
|
|
|
EXPECT_NE(nullptr, mock_buzzer_.MakeBuzz("world")); |
|
|
|
|
``` |
|
|
|
@ -2805,7 +2805,7 @@ pretty much anything you want: |
|
|
|
|
```cpp |
|
|
|
|
EXPECT_CALL(mock_buzzer_, MakeBuzz("x")) |
|
|
|
|
.WillRepeatedly([](StringPiece text) { |
|
|
|
|
return MakeUnique<Buzz>(AccessLevel::kInternal); |
|
|
|
|
return std::make_unique<Buzz>(AccessLevel::kInternal); |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
EXPECT_NE(nullptr, mock_buzzer_.MakeBuzz("x")); |
|
|
|
@ -2824,7 +2824,7 @@ can always use `Return`, or a [lambda or functor](#FunctionsAsActions): |
|
|
|
|
using ::testing::Unused; |
|
|
|
|
|
|
|
|
|
EXPECT_CALL(mock_buzzer_, ShareBuzz(NotNull(), _)).WillOnce(Return(true)); |
|
|
|
|
EXPECT_TRUE(mock_buzzer_.ShareBuzz(MakeUnique<Buzz>(AccessLevel::kInternal)), |
|
|
|
|
EXPECT_TRUE(mock_buzzer_.ShareBuzz(std::make_unique<Buzz>(AccessLevel::kInternal)), |
|
|
|
|
0); |
|
|
|
|
|
|
|
|
|
EXPECT_CALL(mock_buzzer_, ShareBuzz(_, _)).WillOnce( |
|
|
|
@ -2868,7 +2868,7 @@ method: |
|
|
|
|
// When one calls ShareBuzz() on the MockBuzzer like this, the call is |
|
|
|
|
// forwarded to DoShareBuzz(), which is mocked. Therefore this statement |
|
|
|
|
// will trigger the above EXPECT_CALL. |
|
|
|
|
mock_buzzer_.ShareBuzz(MakeUnique<Buzz>(AccessLevel::kInternal), 0); |
|
|
|
|
mock_buzzer_.ShareBuzz(std::make_unique<Buzz>(AccessLevel::kInternal), 0); |
|
|
|
|
``` |
|
|
|
|
|
|
|
|
|
### Making the Compilation Faster |
|
|
|
|