libweave: Suppress mock warnings
We had several unimportant warning about uninteresting calls.
Change added StrictMock and sets reasonable expectations.
Warning make harder to investigate real failures and changed locations
are simple enoug to maintain strict mocks.
BUG=none
TEST='FEATURES=test emerge-gizmo libweave'
Change-Id: Ic5faf8e30e8e78261ba66a4093a87e63bcf383ae
diff --git a/libweave/src/base_api_handler_unittest.cc b/libweave/src/base_api_handler_unittest.cc
index 2ecf6a1..685aa55 100644
--- a/libweave/src/base_api_handler_unittest.cc
+++ b/libweave/src/base_api_handler_unittest.cc
@@ -17,12 +17,18 @@
#include "libweave/src/states/state_manager.h"
#include "libweave/src/storage_impls.h"
+using testing::_;
+using testing::StrictMock;
+using testing::Return;
+
namespace weave {
class BaseApiHandlerTest : public ::testing::Test {
protected:
void SetUp() override {
- transport_ = std::make_shared<chromeos::http::fake::Transport>();
+ EXPECT_CALL(mock_state_change_queue_, NotifyPropertiesUpdated(_, _))
+ .WillRepeatedly(Return(true));
+
command_manager_ = std::make_shared<CommandManager>();
state_manager_ = std::make_shared<StateManager>(&mock_state_change_queue_);
auto state_definition = unittests::CreateDictionaryValue(R"({
@@ -81,7 +87,7 @@
std::shared_ptr<chromeos::http::fake::Transport> transport_;
std::unique_ptr<DeviceRegistrationInfo> dev_reg_;
std::shared_ptr<CommandManager> command_manager_;
- testing::NiceMock<MockStateChangeQueueInterface> mock_state_change_queue_;
+ testing::StrictMock<MockStateChangeQueueInterface> mock_state_change_queue_;
std::shared_ptr<StateManager> state_manager_;
std::unique_ptr<BaseApiHandler> handler_;
int command_id_{0};
diff --git a/libweave/src/device_registration_info_unittest.cc b/libweave/src/device_registration_info_unittest.cc
index 9c45afd..7d204bd 100644
--- a/libweave/src/device_registration_info_unittest.cc
+++ b/libweave/src/device_registration_info_unittest.cc
@@ -22,6 +22,10 @@
#include "libweave/src/states/state_manager.h"
#include "libweave/src/storage_impls.h"
+using testing::_;
+using testing::Return;
+using testing::StrictMock;
+
namespace weave {
using chromeos::http::fake::ServerRequest;
@@ -176,6 +180,11 @@
class DeviceRegistrationInfoTest : public ::testing::Test {
protected:
void SetUp() override {
+ EXPECT_CALL(mock_state_change_queue_, GetLastStateChangeId())
+ .WillRepeatedly(Return(0));
+ EXPECT_CALL(mock_state_change_queue_, MockAddOnStateUpdatedCallback(_))
+ .WillRepeatedly(Return(nullptr));
+
std::unique_ptr<StorageInterface> storage{new MemStorage};
storage_ = storage.get();
storage->Save(data_);
@@ -249,7 +258,7 @@
std::shared_ptr<chromeos::http::fake::Transport> transport_;
std::unique_ptr<DeviceRegistrationInfo> dev_reg_;
std::shared_ptr<CommandManager> command_manager_;
- testing::NiceMock<MockStateChangeQueueInterface> mock_state_change_queue_;
+ StrictMock<MockStateChangeQueueInterface> mock_state_change_queue_;
std::shared_ptr<StateManager> state_manager_;
};
diff --git a/libweave/src/states/state_manager_unittest.cc b/libweave/src/states/state_manager_unittest.cc
index 8325677..95f85a5 100644
--- a/libweave/src/states/state_manager_unittest.cc
+++ b/libweave/src/states/state_manager_unittest.cc
@@ -83,11 +83,11 @@
base::Time timestamp_{base::Time::Now()};
std::unique_ptr<StateManager> mgr_;
- MockStateChangeQueueInterface mock_state_change_queue_;
+ testing::StrictMock<MockStateChangeQueueInterface> mock_state_change_queue_;
};
TEST(StateManager, Empty) {
- MockStateChangeQueueInterface mock_state_change_queue;
+ testing::StrictMock<MockStateChangeQueueInterface> mock_state_change_queue;
StateManager manager(&mock_state_change_queue);
EXPECT_TRUE(manager.GetCategories().empty());
}
@@ -195,6 +195,8 @@
unittests::make_string_prop_value("Test Value")}});
EXPECT_CALL(mock_state_change_queue_, GetAndClearRecordedStateChanges())
.WillOnce(Return(expected_val));
+ EXPECT_CALL(mock_state_change_queue_, GetLastStateChangeId())
+ .WillOnce(Return(0));
auto changes = mgr_->GetAndClearRecordedStateChanges();
ASSERT_EQ(1, changes.second.size());
EXPECT_EQ(expected_val.back().timestamp, changes.second.back().timestamp);