summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitriy Klimenko <dklimenko@luxoft.com>2014-10-07 02:55:58 -0700
committerDmitriy Klimenko <dklimenko@luxoft.com>2014-10-07 02:56:24 -0700
commit3cf3829967c099d30a922906efdf46cbd96ef1f0 (patch)
tree36ca36ec9dc7f42c857a3c296c6e2c13aa753412
parent3b621c81d9a3127a555d5d7cb30326f980873da1 (diff)
downloadsmartdevicelink-3cf3829967c099d30a922906efdf46cbd96ef1f0.tar.gz
APPLINK-9617; RTC 479720 GetVehicleData times out when HMI response is DATA_NOT_AVALAIBLE fix
-rw-r--r--src/components/application_manager/src/application_manager_impl.cc4
-rw-r--r--src/components/application_manager/src/commands/mobile/slider_request.cc5
-rw-r--r--src/components/smart_objects/src/object_schema_item.cc6
-rw-r--r--test/components/smart_objects/SchemaItem/test_CObjectSchemaItem.cpp15
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));