summaryrefslogtreecommitdiff
path: root/src/components/application_manager/rpc_plugins/sdl_rpc_plugin
diff options
context:
space:
mode:
authorJackLivio <jack@livio.io>2018-06-27 10:50:28 -0400
committerJackLivio <jack@livio.io>2018-06-27 10:50:28 -0400
commitde1f0e371bc514464cd3ed343c4cc45e355c16f9 (patch)
tree69fb4bcdadab46c99876a1c13366165bff37813c /src/components/application_manager/rpc_plugins/sdl_rpc_plugin
parent22d3d2e92cb084d4987e52f148b1328e7a843952 (diff)
downloadsdl_core-de1f0e371bc514464cd3ed343c4cc45e355c16f9.tar.gz
Merge Develop
Diffstat (limited to 'src/components/application_manager/rpc_plugins/sdl_rpc_plugin')
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/mobile/add_sub_menu_request.cc35
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/hmi/hmi_notifications_test.cc6
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/hmi/on_driver_distraction_notification_test.cc4
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/hmi/sdl_activate_app_request_test.cc7
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/add_command_request_test.cc77
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/add_sub_menu_request_test.cc43
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/change_registration_test.cc17
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/create_interaction_choice_set_test.cc5
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/delete_interaction_choice_set_test.cc7
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/delete_sub_menu_test.cc9
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/on_hmi_status_notification_from_mobile_test.cc4
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/on_keyboard_input_notification_test.cc4
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/register_app_interface_request_test.cc11
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/set_global_properties_test.cc16
14 files changed, 167 insertions, 78 deletions
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/mobile/add_sub_menu_request.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/mobile/add_sub_menu_request.cc
index 9e945e6d5f..d9075b707e 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/mobile/add_sub_menu_request.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/mobile/add_sub_menu_request.cc
@@ -67,8 +67,27 @@ void AddSubMenuRequest::Run() {
return;
}
+
+ smart_objects::SmartObject received_msg_params =
+ (*message_)[strings::msg_params];
+ mobile_apis::Result::eType verification_result =
+ mobile_apis::Result::INVALID_ENUM;
+
+ if (received_msg_params.keyExists(strings::menu_icon)) {
+ verification_result = MessageHelper::VerifyImage(
+ received_msg_params[strings::menu_icon],
+ app,
+ application_manager_);
+
+ if (mobile_apis::Result::SUCCESS != verification_result) {
+ LOG4CXX_ERROR(logger_,"MessageHelper::VerifyImage return " << verification_result);
+ SendResponse(false, verification_result);
+ return;
+ }
+ }
+
const int32_t menu_id =
- (*message_)[strings::msg_params][strings::menu_id].asInt();
+ received_msg_params[strings::menu_id].asInt();
if (app->FindSubMenu(menu_id)) {
LOG4CXX_ERROR(logger_, "Menu with id " << menu_id << " is not found.");
SendResponse(false, mobile_apis::Result::INVALID_ID);
@@ -76,7 +95,7 @@ void AddSubMenuRequest::Run() {
}
const std::string& menu_name =
- (*message_)[strings::msg_params][strings::menu_name].asString();
+ received_msg_params[strings::menu_name].asString();
if (app->IsSubMenuNameAlreadyExist(menu_name)) {
LOG4CXX_ERROR(logger_, "Menu name " << menu_name << " is duplicated.");
@@ -94,15 +113,19 @@ void AddSubMenuRequest::Run() {
smart_objects::SmartObject(smart_objects::SmartType_Map);
msg_params[strings::menu_id] =
- (*message_)[strings::msg_params][strings::menu_id];
- if ((*message_)[strings::msg_params].keyExists(strings::position)) {
+ received_msg_params[strings::menu_id];
+ if (received_msg_params.keyExists(strings::position)) {
msg_params[strings::menu_params][strings::position] =
- (*message_)[strings::msg_params][strings::position];
+ received_msg_params[strings::position];
}
msg_params[strings::menu_params][strings::menu_name] =
- (*message_)[strings::msg_params][strings::menu_name];
+ received_msg_params[strings::menu_name];
msg_params[strings::app_id] = app->app_id();
+ if (mobile_apis::Result::SUCCESS == verification_result) {
+ msg_params[strings::menu_icon] = received_msg_params[strings::menu_icon];
+ }
+
StartAwaitForInterface(HmiInterfaces::HMI_INTERFACE_UI);
SendHMIRequest(hmi_apis::FunctionID::UI_AddSubMenu, &msg_params, true);
}
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/hmi/hmi_notifications_test.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/hmi/hmi_notifications_test.cc
index 92436d8ad7..b498d07d99 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/hmi/hmi_notifications_test.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/hmi/hmi_notifications_test.cc
@@ -223,7 +223,9 @@ class HMICommandsNotificationsTest
CommandsTestMocks::kIsNice> {
public:
HMICommandsNotificationsTest()
- : applications_(application_set_, applications_lock_), app_ptr_(NULL) {}
+ : applications_lock_(std::make_shared<sync_primitives::Lock>())
+ , applications_(application_set_, applications_lock_)
+ , app_ptr_(NULL) {}
~HMICommandsNotificationsTest() {
// Fix DataAccessor release and WinQt crash
@@ -233,7 +235,7 @@ class HMICommandsNotificationsTest
protected:
am::ApplicationSet application_set_;
- sync_primitives::Lock applications_lock_;
+ std::shared_ptr<sync_primitives::Lock> applications_lock_;
DataAccessor<am::ApplicationSet> applications_;
NiceMock<event_engine_test::MockEventDispatcher> mock_event_dispatcher_;
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/hmi/on_driver_distraction_notification_test.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/hmi/on_driver_distraction_notification_test.cc
index bc307a9e97..60a7b01612 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/hmi/on_driver_distraction_notification_test.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/hmi/on_driver_distraction_notification_test.cc
@@ -68,7 +68,9 @@ typedef ::utils::SharedPtr<OnDriverDistractionNotification> NotificationPtr;
class HMIOnDriverDistractionNotificationTest
: public CommandsTest<CommandsTestMocks::kIsNice> {
public:
- ::sync_primitives::Lock app_set_lock_;
+ HMIOnDriverDistractionNotificationTest()
+ : app_set_lock_(std::make_shared<sync_primitives::Lock>()) {}
+ std::shared_ptr<sync_primitives::Lock> app_set_lock_;
policy_test::MockPolicyHandlerInterface mock_policy_handler_interface_;
};
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/hmi/sdl_activate_app_request_test.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/hmi/sdl_activate_app_request_test.cc
index 900682eaf2..c21791e913 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/hmi/sdl_activate_app_request_test.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/hmi/sdl_activate_app_request_test.cc
@@ -99,6 +99,10 @@ MATCHER_P2(CheckMsgParams, result, corr_id, "") {
class SDLActivateAppRequestTest
: public CommandRequestTest<CommandsTestMocks::kIsNice> {
+ public:
+ SDLActivateAppRequestTest()
+ : lock_(std::make_shared<sync_primitives::Lock>()) {}
+
protected:
~SDLActivateAppRequestTest() {
// Fix DataAccessor release and WinQt crash
@@ -118,7 +122,8 @@ class SDLActivateAppRequestTest
}
ApplicationSet app_list_;
- ::sync_primitives::Lock lock_;
+ std::shared_ptr<sync_primitives::Lock> lock_;
+ policy_test::MockPolicyHandlerInterface policy_handler_;
application_manager_test::MockStateController mock_state_controller_;
NiceMock<event_engine_test::MockEventDispatcher> mock_event_dispatcher_;
};
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/add_command_request_test.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/add_command_request_test.cc
index 138de72c1f..0db14a13ce 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/add_command_request_test.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/add_command_request_test.cc
@@ -103,6 +103,7 @@ class AddCommandRequestTest
AddCommandRequestTest()
: msg_(CreateMessage())
, default_app_name_("test_default_app_name_")
+ , lock_ptr_(std::make_shared<sync_primitives::Lock>())
, mock_app_(CreateMockApp()) {
EXPECT_CALL(app_mngr_, application(kConnectionKey))
.WillRepeatedly(Return(mock_app_));
@@ -176,7 +177,7 @@ class AddCommandRequestTest
CreateCommandsMap(first_command, second_command);
EXPECT_CALL(*mock_app_, commands_map())
.WillRepeatedly(Return(DataAccessor<application_manager::CommandsMap>(
- commands_map, lock_)));
+ commands_map, lock_ptr_)));
so_ptr_ = utils::MakeShared<SmartObject>(SmartType_Map);
EXPECT_CALL(*mock_app_, FindSubMenu(kSecondParentId))
.WillOnce(Return(so_ptr_.get()));
@@ -224,7 +225,7 @@ class AddCommandRequestTest
MessageSharedPtr msg_;
SmartObjectSPtr so_ptr_;
const utils::custom_string::CustomString default_app_name_;
- sync_primitives::Lock lock_;
+ std::shared_ptr<sync_primitives::Lock> lock_ptr_;
MockAppPtr mock_app_;
};
@@ -269,8 +270,8 @@ TEST_F(AddCommandRequestTest, Run_MenuNameHasSyntaxError_EXPECT_INVALID_DATA) {
EXPECT_CALL(*mock_app_, FindCommand(kCmdId)).WillOnce(Return(so_ptr_.get()));
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
- .WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ .WillRepeatedly(Return(DataAccessor<application_manager::CommandsMap>(
+ commands_map, lock_ptr_)));
SmartObject parent = SmartObject(SmartType_Map);
EXPECT_CALL(*mock_app_, FindSubMenu(kFirstParentId))
.WillOnce(Return(&parent));
@@ -292,7 +293,7 @@ TEST_F(AddCommandRequestTest,
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
.WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ DataAccessor<application_manager::CommandsMap>(commands_map, lock_ptr_)));
EXPECT_CALL(mock_rpc_service_,
ManageMobileCommand(
@@ -318,7 +319,7 @@ TEST_F(AddCommandRequestTest, Run_CMDIconHasError_EXPECT_INVALID_DATA) {
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
.WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ DataAccessor<application_manager::CommandsMap>(commands_map, lock_ptr_)));
EXPECT_CALL(mock_rpc_service_,
ManageMobileCommand(
@@ -360,7 +361,7 @@ TEST_F(AddCommandRequestTest,
CreateCommandsMap(first_command, second_command);
EXPECT_CALL(*mock_app_, commands_map())
.WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ DataAccessor<application_manager::CommandsMap>(commands_map, lock_ptr_)));
EXPECT_CALL(mock_rpc_service_,
ManageMobileCommand(
@@ -384,8 +385,8 @@ TEST_F(AddCommandRequestTest,
const am::CommandsMap commands_map =
CreateCommandsMap(first_command, second_command);
EXPECT_CALL(*mock_app_, commands_map())
- .WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ .WillRepeatedly(Return(DataAccessor<application_manager::CommandsMap>(
+ commands_map, lock_ptr_)));
EXPECT_CALL(*mock_app_, FindSubMenu(kSecondParentId))
.WillOnce(Return(so_ptr_.get()));
@@ -413,8 +414,8 @@ TEST_F(AddCommandRequestTest,
const am::CommandsMap commands_map =
CreateCommandsMap(first_command, second_command);
EXPECT_CALL(*mock_app_, commands_map())
- .WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ .WillRepeatedly(Return(DataAccessor<application_manager::CommandsMap>(
+ commands_map, lock_ptr_)));
so_ptr_ = utils::MakeShared<SmartObject>(SmartType_Map);
EXPECT_CALL(*mock_app_, FindSubMenu(kSecondParentId))
.WillOnce(Return(so_ptr_.get()));
@@ -458,8 +459,8 @@ TEST_F(AddCommandRequestTest,
const am::CommandsMap commands_map =
CreateCommandsMap(first_command, second_command);
EXPECT_CALL(*mock_app_, commands_map())
- .WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ .WillRepeatedly(Return(DataAccessor<application_manager::CommandsMap>(
+ commands_map, lock_ptr_)));
so_ptr_ = utils::MakeShared<SmartObject>(SmartType_Map);
EXPECT_CALL(*mock_app_, FindSubMenu(kSecondParentId))
.WillOnce(Return(so_ptr_.get()));
@@ -492,7 +493,7 @@ TEST_F(AddCommandRequestTest, GetRunMethods_SUCCESS) {
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
.WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ DataAccessor<application_manager::CommandsMap>(commands_map, lock_ptr_)));
EXPECT_CALL(
mock_rpc_service_,
@@ -514,7 +515,7 @@ TEST_F(AddCommandRequestTest, OnEvent_UI_SUCCESS) {
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
.WillRepeatedly(
- Return(DataAccessor<am::CommandsMap>(commands_map, lock_)));
+ Return(DataAccessor<am::CommandsMap>(commands_map, lock_ptr_)));
Event event(hmi_apis::FunctionID::UI_AddCommand);
event.set_smart_object(*msg_);
@@ -542,7 +543,7 @@ TEST_F(AddCommandRequestTest, OnEvent_VR_SUCCESS) {
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
.WillRepeatedly(
- Return(DataAccessor<am::CommandsMap>(commands_map, lock_)));
+ Return(DataAccessor<am::CommandsMap>(commands_map, lock_ptr_)));
EXPECT_CALL(
mock_rpc_service_,
@@ -617,7 +618,7 @@ TEST_F(AddCommandRequestTest,
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
.WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ DataAccessor<application_manager::CommandsMap>(commands_map, lock_ptr_)));
EXPECT_CALL(
mock_rpc_service_,
@@ -647,8 +648,8 @@ TEST_F(AddCommandRequestTest,
.WillOnce(Return(mobile_apis::Result::SUCCESS));
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
- .WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ .WillRepeatedly(Return(DataAccessor<application_manager::CommandsMap>(
+ commands_map, lock_ptr_)));
{
InSequence dummy;
@@ -687,8 +688,8 @@ TEST_F(
.WillOnce(Return(mobile_apis::Result::SUCCESS));
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
- .WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ .WillRepeatedly(Return(DataAccessor<application_manager::CommandsMap>(
+ commands_map, lock_ptr_)));
{
InSequence dummy;
EXPECT_CALL(
@@ -731,8 +732,8 @@ TEST_F(
.WillOnce(Return(mobile_apis::Result::SUCCESS));
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
- .WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ .WillRepeatedly(Return(DataAccessor<application_manager::CommandsMap>(
+ commands_map, lock_ptr_)));
{
InSequence dummy;
@@ -776,8 +777,8 @@ TEST_F(
.WillOnce(Return(mobile_apis::Result::SUCCESS));
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
- .WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ .WillRepeatedly(Return(DataAccessor<application_manager::CommandsMap>(
+ commands_map, lock_ptr_)));
{
InSequence dummy;
@@ -826,8 +827,8 @@ TEST_F(
.WillOnce(Return(mobile_apis::Result::SUCCESS));
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
- .WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ .WillRepeatedly(Return(DataAccessor<application_manager::CommandsMap>(
+ commands_map, lock_ptr_)));
{
InSequence dummy;
EXPECT_CALL(
@@ -874,8 +875,8 @@ TEST_F(
.WillOnce(Return(mobile_apis::Result::SUCCESS));
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
- .WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ .WillRepeatedly(Return(DataAccessor<application_manager::CommandsMap>(
+ commands_map, lock_ptr_)));
EXPECT_CALL(
mock_rpc_service_,
ManageHMICommand(HMIResultCodeIs(hmi_apis::FunctionID::UI_AddCommand)))
@@ -911,7 +912,7 @@ TEST_F(
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
.WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ DataAccessor<application_manager::CommandsMap>(commands_map, lock_ptr_)));
EXPECT_CALL(
mock_rpc_service_,
@@ -949,8 +950,8 @@ TEST_F(AddCommandRequestTest,
.WillOnce(Return(mobile_apis::Result::SUCCESS));
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
- .WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ .WillRepeatedly(Return(DataAccessor<application_manager::CommandsMap>(
+ commands_map, lock_ptr_)));
{
InSequence dummy;
EXPECT_CALL(
@@ -997,8 +998,8 @@ TEST_F(AddCommandRequestTest,
.WillOnce(Return(mobile_apis::Result::SUCCESS));
am::CommandsMap commands_map;
EXPECT_CALL(*mock_app_, commands_map())
- .WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ .WillRepeatedly(Return(DataAccessor<application_manager::CommandsMap>(
+ commands_map, lock_ptr_)));
{
InSequence dummy;
EXPECT_CALL(
@@ -1069,8 +1070,8 @@ TEST_F(AddCommandRequestTest, OnTimeOut_AppRemoveCommandCalled) {
const am::CommandsMap commands_map =
CreateCommandsMap(first_command, second_command);
EXPECT_CALL(*mock_app_, commands_map())
- .WillRepeatedly(Return(
- DataAccessor<application_manager::CommandsMap>(commands_map, lock_)));
+ .WillRepeatedly(Return(DataAccessor<application_manager::CommandsMap>(
+ commands_map, lock_ptr_)));
so_ptr_ = utils::MakeShared<SmartObject>(SmartType_Map);
EXPECT_CALL(*mock_app_, FindSubMenu(kSecondParentId))
.WillOnce(Return(so_ptr_.get()));
@@ -1104,8 +1105,8 @@ TEST_F(AddCommandRequestTest, OnTimeOut_AppRemoveCommandCalled) {
base_class_request->onTimeOut();
}
-} // namespace add_command_test
+} // namespace add_command_request
} // namespace mobile_commands_test
} // namespace commands_test
} // namespace components
-} // namespace tests
+} // namespace test
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/add_sub_menu_request_test.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/add_sub_menu_request_test.cc
index 21b3e771ce..b692b75bec 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/add_sub_menu_request_test.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/add_sub_menu_request_test.cc
@@ -61,10 +61,50 @@ typedef SharedPtr<AddSubMenuRequest> AddSubMenuPtr;
namespace {
const uint32_t kConnectionKey = 2u;
+const uint32_t kAppId = 1u;
} // namespace
class AddSubMenuRequestTest
- : public CommandRequestTest<CommandsTestMocks::kIsNice> {};
+ : public CommandRequestTest<CommandsTestMocks::kIsNice> {
+ public:
+ AddSubMenuRequestTest()
+ : mock_app(CreateMockApp()) {
+ EXPECT_CALL(app_mngr_, application(kConnectionKey))
+ .WillRepeatedly(Return(mock_app));
+ }
+
+ MockAppPtr mock_app;
+
+ MessageSharedPtr CreateMsgParams() {
+ MessageSharedPtr msg = CreateMessage();
+ (*msg)[am::strings::params][am::strings::connection_key] = kConnectionKey;
+ (*msg)[am::strings::msg_params][am::strings::app_id] = kAppId;
+ return msg;
+ }
+};
+
+
+TEST_F(AddSubMenuRequestTest, Run_ImageVerificationFailed_EXPECT_INVALID_DATA) {
+ const uint32_t menu_id = 10u;
+ MessageSharedPtr msg = CreateMsgParams();
+ SmartObject& msg_params = (*msg)[am::strings::msg_params];
+
+ msg_params[am::strings::menu_icon] = 1;
+ msg_params[am::strings::menu_icon][am::strings::value] = "10";
+ msg_params[am::strings::menu_id] = menu_id;
+ msg_params[am::strings::menu_name] = "test";
+ SmartObject& image = msg_params[am::strings::menu_icon];
+
+ EXPECT_CALL(mock_message_helper_, VerifyImage(image, _, _))
+ .WillOnce(Return(mobile_apis::Result::INVALID_DATA));
+ EXPECT_CALL(mock_rpc_service_,
+ ManageMobileCommand(MobileResultCodeIs(mobile_apis::Result::INVALID_DATA), _));
+ utils::SharedPtr<AddSubMenuRequest> request_ptr =
+ CreateCommand<AddSubMenuRequest>(msg);
+
+ request_ptr->Run();
+}
+
TEST_F(AddSubMenuRequestTest, OnEvent_UI_UNSUPPORTED_RESOURCE) {
const uint32_t menu_id = 10u;
@@ -75,7 +115,6 @@ TEST_F(AddSubMenuRequestTest, OnEvent_UI_UNSUPPORTED_RESOURCE) {
utils::SharedPtr<AddSubMenuRequest> command =
CreateCommand<AddSubMenuRequest>(msg);
- MockAppPtr mock_app = CreateMockApp();
ON_CALL(app_mngr_, application(kConnectionKey))
.WillByDefault(Return(mock_app));
ON_CALL(*mock_app, app_id()).WillByDefault(Return(kConnectionKey));
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/change_registration_test.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/change_registration_test.cc
index 30f01e390e..3d6a345ced 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/change_registration_test.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/change_registration_test.cc
@@ -88,7 +88,8 @@ class ChangeRegistrationRequestTest
: public CommandRequestTest<CommandsTestMocks::kIsNice> {
public:
ChangeRegistrationRequestTest()
- : mock_app_(CreateMockApp())
+ : app_set_lock_ptr_(std::make_shared<sync_primitives::Lock>())
+ , mock_app_(CreateMockApp())
, supported_languages_(CreateMessage(smart_objects::SmartType_Array)) {}
MessageSharedPtr CreateMsgFromMobile() {
@@ -158,7 +159,8 @@ class ChangeRegistrationRequestTest
MockAppPtr app = CreateMockApp();
app->set_name(name);
- DataAccessor<am::ApplicationSet> accessor(application_set, app_set_lock_);
+ DataAccessor<am::ApplicationSet> accessor(application_set,
+ app_set_lock_ptr_);
application_set.insert(app);
@@ -265,7 +267,8 @@ class ChangeRegistrationRequestTest
NiceMock<application_manager_test::MockHMICapabilities>,
application_manager_test::MockHMICapabilities>::Result
MockHMICapabilities;
- sync_primitives::Lock app_set_lock_;
+ std::shared_ptr<sync_primitives::Lock> app_set_lock_ptr_;
+ MockHMICapabilities hmi_capabilities_;
MockAppPtr mock_app_;
MessageSharedPtr supported_languages_;
MockPolicyHandlerInterface mock_policy_handler_;
@@ -284,7 +287,7 @@ TEST_F(ChangeRegistrationRequestTest,
MockAppPtr app = CreateMockApp();
app->set_name(name);
- DataAccessor<am::ApplicationSet> accessor(application_set, app_set_lock_);
+ DataAccessor<am::ApplicationSet> accessor(application_set, app_set_lock_ptr_);
application_set.insert(app);
@@ -373,7 +376,7 @@ TEST_F(ChangeRegistrationRequestTest,
const utils::custom_string::CustomString name("name");
MockAppPtr app = CreateMockApp();
app->set_name(name);
- DataAccessor<am::ApplicationSet> accessor(application_set, app_set_lock_);
+ DataAccessor<am::ApplicationSet> accessor(application_set, app_set_lock_ptr_);
application_set.insert(app);
EXPECT_CALL(app_mngr_, applications()).WillOnce(Return(accessor));
EXPECT_CALL(*app, name()).WillOnce(ReturnRef(name));
@@ -477,7 +480,7 @@ TEST_F(ChangeRegistrationRequestTest,
MockAppPtr app = CreateMockApp();
app->set_name(name);
- DataAccessor<am::ApplicationSet> accessor(application_set, app_set_lock_);
+ DataAccessor<am::ApplicationSet> accessor(application_set, app_set_lock_ptr_);
application_set.insert(app);
@@ -556,4 +559,4 @@ TEST_F(ChangeRegistrationRequestTest,
} // namespace mobile_commands_test
} // namespace commands_test
} // namespace components
-} // namespace tests
+} // namespace test
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/create_interaction_choice_set_test.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/create_interaction_choice_set_test.cc
index 6f5850c1bd..10ffbded09 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/create_interaction_choice_set_test.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/create_interaction_choice_set_test.cc
@@ -113,7 +113,8 @@ class CreateInteractionChoiceSetRequestTest
CreateInteractionChoiceSetRequestTest()
: message_(CreateMessage())
, command_(CreateCommand<CreateInteractionChoiceSetRequest>(message_))
- , mock_app_(CreateMockApp()) {}
+ , mock_app_(CreateMockApp())
+ , lock_(std::make_shared<sync_primitives::Lock>()) {}
MessageSharedPtr CreateFullParamsVRSO() {
MessageSharedPtr msg = CreateMessage(smart_objects::SmartType_Map);
@@ -158,7 +159,7 @@ class CreateInteractionChoiceSetRequestTest
MessageSharedPtr message_;
CreateInteractionChoiceSetRequestPtr command_;
MockAppPtr mock_app_;
- sync_primitives::Lock lock_;
+ std::shared_ptr<sync_primitives::Lock> lock_;
};
class CreateInteractionChoiceSetResponseTest
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/delete_interaction_choice_set_test.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/delete_interaction_choice_set_test.cc
index ac4acfcdbc..b2daef9cd2 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/delete_interaction_choice_set_test.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/delete_interaction_choice_set_test.cc
@@ -84,7 +84,9 @@ class DeleteInteractionChoiceSetRequestTest
: public CommandRequestTest<CommandsTestMocks::kIsNice> {
public:
DeleteInteractionChoiceSetRequestTest()
- : accessor_(choice_set_map_, performinteraction_choice_set_lock_) {}
+ : performinteraction_choice_set_lock_(
+ std::make_shared<sync_primitives::Lock>())
+ , accessor_(choice_set_map_, performinteraction_choice_set_lock_) {}
~DeleteInteractionChoiceSetRequestTest() {
// Fix DataAccessor release and WinQt crash
@@ -92,7 +94,8 @@ class DeleteInteractionChoiceSetRequestTest
}
am::PerformChoiceSetMap choice_set_map_;
- mutable sync_primitives::Lock performinteraction_choice_set_lock_;
+ mutable std::shared_ptr<sync_primitives::Lock>
+ performinteraction_choice_set_lock_;
DataAccessor<am::PerformChoiceSetMap> accessor_;
protected:
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/delete_sub_menu_test.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/delete_sub_menu_test.cc
index ea7752ff4e..7a187c46d1 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/delete_sub_menu_test.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/delete_sub_menu_test.cc
@@ -95,13 +95,14 @@ class DeleteSubMenuRequestTest
: public CommandRequestTest<CommandsTestMocks::kIsNice> {
public:
DeleteSubMenuRequestTest()
- : accessor_(commands_map_, commands_lock_)
+ : commands_lock_(std::make_shared<sync_primitives::Lock>())
+ , accessor_(commands_map_, commands_lock_)
, message_(CreateMessage())
, command_(CreateCommand<DeleteSubMenuRequest>(message_))
, app_(CreateMockApp()) {}
am::CommandsMap commands_map_;
- mutable sync_primitives::Lock commands_lock_;
+ mutable std::shared_ptr<sync_primitives::Lock> commands_lock_;
DataAccessor<am::CommandsMap> accessor_;
MessageSharedPtr message_;
@@ -143,8 +144,8 @@ TEST_F(DeleteSubMenuRequestTest, DISABLED_OnEvent_UI_UNSUPPORTED_RESOURCE) {
am::CommandsMap commands_map;
smart_objects::SmartObject commands_msg(smart_objects::SmartType_Map);
commands_map.insert(std::pair<uint32_t, SmartObject*>(1u, &commands_msg));
- sync_primitives::Lock lock;
- DataAccessor<am::CommandsMap> accessor(commands_map, lock);
+ DataAccessor<am::CommandsMap> accessor(
+ commands_map, std::make_shared<sync_primitives::Lock>());
EXPECT_CALL(*mock_app, commands_map())
.WillOnce(Return(accessor))
.WillOnce(Return(accessor));
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/on_hmi_status_notification_from_mobile_test.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/on_hmi_status_notification_from_mobile_test.cc
index 8e11e82b57..43e01c5a3d 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/on_hmi_status_notification_from_mobile_test.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/on_hmi_status_notification_from_mobile_test.cc
@@ -61,6 +61,8 @@ using testing::_;
class OnHMIStatusNotificationFromMobileTest
: public CommandsTest<CommandsTestMocks::kIsNice> {
public:
+ OnHMIStatusNotificationFromMobileTest()
+ : lock_(std::make_shared<sync_primitives::Lock>()) {}
MessageSharedPtr CreateMsgParams(
const mobile_apis::HMILevel::eType kHMIState) {
MessageSharedPtr msg = CreateMessage();
@@ -69,7 +71,7 @@ class OnHMIStatusNotificationFromMobileTest
return msg;
}
ApplicationSet app_set_;
- sync_primitives::Lock lock_;
+ std::shared_ptr<sync_primitives::Lock> lock_;
};
TEST_F(OnHMIStatusNotificationFromMobileTest,
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/on_keyboard_input_notification_test.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/on_keyboard_input_notification_test.cc
index adece503a3..ebfc2256ac 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/on_keyboard_input_notification_test.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/on_keyboard_input_notification_test.cc
@@ -61,6 +61,8 @@ using testing::_;
class OnKeyBoardInputNotificationTest
: public CommandsTest<CommandsTestMocks::kIsNice> {
public:
+ OnKeyBoardInputNotificationTest()
+ : lock_(std::make_shared<sync_primitives::Lock>()) {}
void SetSendNotificationExpectations(MessageSharedPtr msg) {
EXPECT_CALL(mock_message_helper_, PrintSmartObject(_))
.WillOnce(Return(false));
@@ -87,7 +89,7 @@ class OnKeyBoardInputNotificationTest
}
SharedPtr<ApplicationSet> app_set_;
- sync_primitives::Lock lock_;
+ std::shared_ptr<sync_primitives::Lock> lock_;
};
TEST_F(OnKeyBoardInputNotificationTest, Run_ActionActive_SUCCESS) {
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/register_app_interface_request_test.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/register_app_interface_request_test.cc
index 96419f021d..8b21ceff17 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/register_app_interface_request_test.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/register_app_interface_request_test.cc
@@ -93,6 +93,7 @@ class RegisterAppInterfaceRequestTest
: msg_(CreateMessage())
, command_(CreateCommand<RegisterAppInterfaceRequest>(msg_))
, app_name_("test_app_name_")
+ , lock_ptr_(std::make_shared<sync_primitives::Lock>())
, mock_application_helper_(
application_manager_test::MockApplicationHelper::
application_helper_mock()) {
@@ -227,7 +228,7 @@ class RegisterAppInterfaceRequestTest
SharedPtr<RegisterAppInterfaceRequest> command_;
const utils::custom_string::CustomString app_name_;
- sync_primitives::Lock lock_;
+ std::shared_ptr<sync_primitives::Lock> lock_ptr_;
am::ApplicationSet app_set_;
typedef IsNiceMock<policy_test::MockPolicyHandlerInterface,
@@ -272,7 +273,8 @@ TEST_F(RegisterAppInterfaceRequestTest, Run_MinimalData_SUCCESS) {
.WillRepeatedly(Return(mock_app));
ON_CALL(app_mngr_, applications())
- .WillByDefault(Return(DataAccessor<am::ApplicationSet>(app_set_, lock_)));
+ .WillByDefault(
+ Return(DataAccessor<am::ApplicationSet>(app_set_, lock_ptr_)));
ON_CALL(mock_policy_handler_, PolicyEnabled()).WillByDefault(Return(true));
ON_CALL(mock_policy_handler_, GetInitialAppData(kAppId, _, _))
.WillByDefault(Return(true));
@@ -348,7 +350,7 @@ TEST_F(RegisterAppInterfaceRequestTest,
display_capabilities[am::hmi_response::text_fields] = "test_text_fields";
display_capabilities[am::hmi_response::image_fields] = "test_image_fields";
display_capabilities[am::hmi_response::media_clock_formats] =
- "test_media_clock_formats";
+ "test_media_clock_ptr_formats";
display_capabilities[am::hmi_response::num_custom_presets_available] =
"test_num_custom_presets_available";
display_capabilities[am::hmi_response::graphic_supported] =
@@ -368,7 +370,8 @@ TEST_F(RegisterAppInterfaceRequestTest,
Return(&(*expected_message)[am::hmi_response::display_capabilities]));
ON_CALL(app_mngr_, applications())
- .WillByDefault(Return(DataAccessor<am::ApplicationSet>(app_set_, lock_)));
+ .WillByDefault(
+ Return(DataAccessor<am::ApplicationSet>(app_set_, lock_ptr_)));
ON_CALL(mock_policy_handler_, PolicyEnabled()).WillByDefault(Return(true));
ON_CALL(mock_policy_handler_, GetInitialAppData(kAppId, _, _))
.WillByDefault(Return(true));
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/set_global_properties_test.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/set_global_properties_test.cc
index 610f923fb8..5d31f48970 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/set_global_properties_test.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/test/commands/mobile/set_global_properties_test.cc
@@ -74,7 +74,9 @@ const uint32_t kPosition = 1u;
class SetGlobalPropertiesRequestTest
: public CommandRequestTest<CommandsTestMocks::kIsNice> {
public:
- SetGlobalPropertiesRequestTest() : mock_app_(CreateMockApp()) {}
+ SetGlobalPropertiesRequestTest()
+ : lock_ptr_(std::make_shared<sync_primitives::Lock>())
+ , mock_app_(CreateMockApp()) {}
MessageSharedPtr CreateFullParamsUISO() {
MessageSharedPtr msg = CreateMessage(smart_objects::SmartType_Map);
@@ -248,7 +250,7 @@ class SetGlobalPropertiesRequestTest
GetInterfaceState(am::HmiInterfaces::HMI_INTERFACE_TTS))
.WillByDefault(Return(am::HmiInterfaces::STATE_AVAILABLE));
}
- sync_primitives::Lock lock_;
+ std::shared_ptr<sync_primitives::Lock> lock_ptr_;
MockAppPtr mock_app_;
};
@@ -621,7 +623,7 @@ TEST_F(SetGlobalPropertiesRequestTest, Run_VRCouldNotGenerate_INVALID_DATA) {
CommandsMap commands_map;
SmartObject empty_msg(smart_objects::SmartType_Map);
commands_map.insert(std::pair<uint32_t, SmartObject*>(1u, &empty_msg));
- DataAccessor<CommandsMap> accessor(commands_map, lock_);
+ DataAccessor<CommandsMap> accessor(commands_map, lock_ptr_);
EXPECT_CALL(*mock_app_, commands_map()).WillOnce(Return(accessor));
EXPECT_CALL(*mock_app_, vr_help_title()).WillOnce(Return(vr_help_title));
EXPECT_CALL(*mock_app_, set_menu_title(_)).Times(0);
@@ -652,7 +654,7 @@ TEST_F(SetGlobalPropertiesRequestTest, Run_NoVRNoDataNoDefault_Canceled) {
.WillOnce(Return(&vr_help_title));
CommandsMap commands_map;
- DataAccessor<CommandsMap> accessor(commands_map, lock_);
+ DataAccessor<CommandsMap> accessor(commands_map, lock_ptr_);
EXPECT_CALL(*mock_app_, commands_map()).WillOnce(Return(accessor));
const CustomString name("name");
EXPECT_CALL(*mock_app_, name()).WillOnce(ReturnRef(name));
@@ -695,7 +697,7 @@ TEST_F(SetGlobalPropertiesRequestTest, Run_NoVRNoDataDefaultCreated_SUCCESS) {
SmartObject command_text(smart_objects::SmartType_Map);
commands_map[0] = &command_text;
(*commands_map[0])[am::strings::vr_commands] = SmartObject("one");
- DataAccessor<CommandsMap> accessor(commands_map, lock_);
+ DataAccessor<CommandsMap> accessor(commands_map, lock_ptr_);
EXPECT_CALL(*mock_app_, commands_map()).WillOnce(Return(accessor));
EXPECT_CALL(*mock_app_, set_vr_help(_));
const CustomString name("name");
@@ -737,7 +739,7 @@ TEST_F(SetGlobalPropertiesRequestTest, Run_NoVRNoDataFromSynonyms_SUCCESS) {
.WillRepeatedly(Return(&vr_help_title));
CommandsMap commands_map;
- DataAccessor<CommandsMap> accessor(commands_map, lock_);
+ DataAccessor<CommandsMap> accessor(commands_map, lock_ptr_);
EXPECT_CALL(*mock_app_, commands_map()).WillOnce(Return(accessor));
SmartObject vr_help_array(smart_objects::SmartType_Array);
vr_help_array[0] = SmartObject(smart_objects::SmartType_Map);
@@ -1246,4 +1248,4 @@ TEST_F(SetGlobalPropertiesRequestTest,
} // namespace mobile_commands_test
} // namespace commands_test
} // namespace components
-} // namespace tests
+} // namespace test