diff options
author | Dmitriy Klimenko <dklimenko@luxoft.com> | 2014-10-07 02:55:58 -0700 |
---|---|---|
committer | Dmitriy Klimenko <dklimenko@luxoft.com> | 2014-10-07 02:56:24 -0700 |
commit | 3cf3829967c099d30a922906efdf46cbd96ef1f0 (patch) | |
tree | 36ca36ec9dc7f42c857a3c296c6e2c13aa753412 | |
parent | 3b621c81d9a3127a555d5d7cb30326f980873da1 (diff) | |
download | smartdevicelink-3cf3829967c099d30a922906efdf46cbd96ef1f0.tar.gz |
APPLINK-9617; RTC 479720 GetVehicleData times out when HMI response is DATA_NOT_AVALAIBLE fix
4 files changed, 17 insertions, 13 deletions
diff --git a/src/components/application_manager/src/application_manager_impl.cc b/src/components/application_manager/src/application_manager_impl.cc index 775eef0bc..69be25935 100644 --- a/src/components/application_manager/src/application_manager_impl.cc +++ b/src/components/application_manager/src/application_manager_impl.cc @@ -1487,9 +1487,7 @@ bool ApplicationManagerImpl::ConvertMessageToSO( return false; } if (output.validate() != smart_objects::Errors::OK) { - LOG4CXX_WARN( - logger_, - "Incorrect parameter from HMI"); + LOG4CXX_WARN(logger_, "Incorrect parameter from HMI"); output.erase(strings::msg_params); output[strings::params][hmi_response::code] = hmi_apis::Common_Result::INVALID_DATA; diff --git a/src/components/application_manager/src/commands/mobile/slider_request.cc b/src/components/application_manager/src/commands/mobile/slider_request.cc index 52b0ee44f..bf200d72d 100644 --- a/src/components/application_manager/src/commands/mobile/slider_request.cc +++ b/src/components/application_manager/src/commands/mobile/slider_request.cc @@ -135,9 +135,8 @@ void SliderRequest::on_event(const event_engine::Event& event) { smart_objects::SmartObject response_msg_params = message[strings::msg_params]; if (response_code == hmi_apis::Common_Result::ABORTED) { //Copy slider_position info to msg_params section - // TODO(DK) : FIXME - /*response_msg_params[strings::slider_position] = - message[strings::params][strings::data][strings::slider_position];*/ + response_msg_params[strings::slider_position] = + message[strings::params][strings::data][strings::slider_position]; } const bool is_response_success = diff --git a/src/components/smart_objects/src/object_schema_item.cc b/src/components/smart_objects/src/object_schema_item.cc index 638609f40..8f572e427 100644 --- a/src/components/smart_objects/src/object_schema_item.cc +++ b/src/components/smart_objects/src/object_schema_item.cc @@ -95,14 +95,14 @@ void CObjectSchemaItem::applySchema(SmartObject& Object) { for (SmartMap::const_iterator it = Object.map_begin(); it != Object.map_end(); ) { const std::string& key = it->first; if (mMembers.end() == mMembers.find(key) - // FIXME(EZamakhov): Remove illigal usage of filed in AM + // FIXME(EZamakhov): Remove illegal usage of filed in AM && key.compare(connection_key) != 0 && key.compare(binary_data) != 0 && key.compare(app_id) != 0 ) { ++it; - // remove fake params - Object.erase(key); + // FIXME(DK): remove fake params. There are error responses with params + // Object.erase(key); } else { it++; } diff --git a/test/components/smart_objects/SchemaItem/test_CObjectSchemaItem.cpp b/test/components/smart_objects/SchemaItem/test_CObjectSchemaItem.cpp index 89177e1e3..54187e0d7 100644 --- a/test/components/smart_objects/SchemaItem/test_CObjectSchemaItem.cpp +++ b/test/components/smart_objects/SchemaItem/test_CObjectSchemaItem.cpp @@ -284,7 +284,7 @@ TEST_F(ObjectSchemaItemTest, validation_unexpected_param_remove) { const char* fake2 = "FAKE_PARAM2"; const char* fake3 = "FAKE_PARAM3"; - SmartObject obj; + SmartObject obj = SmartObject(SmartType::SmartType_Map); obj[S_PARAMS][S_FUNCTION_ID] = 0; obj[S_PARAMS][S_CORRELATION_ID] = 0XFF; obj[S_PARAMS][S_PROTOCOL_VERSION] = 1; @@ -298,11 +298,18 @@ TEST_F(ObjectSchemaItemTest, validation_unexpected_param_remove) { // Check apply schema schema_item->applySchema(obj); - // all fake parameters are romed on apply schema + + EXPECT_TRUE(obj.keyExists(fake1)); + EXPECT_TRUE(obj[S_PARAMS].keyExists(fake2)); + EXPECT_TRUE(obj[S_MSG_PARAMS].keyExists(fake3)); + EXPECT_EQ(Errors::OK, schema_item->validate(obj)); + + // all fake parameters are removed on unapply schema + schema_item->unapplySchema(obj); + EXPECT_FALSE(obj.keyExists(fake1)); EXPECT_FALSE(obj[S_PARAMS].keyExists(fake2)); EXPECT_FALSE(obj[S_MSG_PARAMS].keyExists(fake3)); - EXPECT_EQ(Errors::OK, schema_item->validate(obj)); obj[fake1] = SmartObject(static_cast<int64_t>(0)); obj[S_PARAMS][fake2] = SmartObject("123"); @@ -310,7 +317,7 @@ TEST_F(ObjectSchemaItemTest, validation_unexpected_param_remove) { // Check unapply schema schema_item->unapplySchema(obj); - // all fake parameters are romed on apply schema + // all fake parameters are removed on apply schema EXPECT_FALSE(obj.keyExists(fake1)); EXPECT_FALSE(obj[S_PARAMS].keyExists(fake2)); EXPECT_FALSE(obj[S_MSG_PARAMS].keyExists(fake3)); |