summaryrefslogtreecommitdiff
path: root/test/components/json_handler/src/FormatterJsonSDLRPCv2Test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/components/json_handler/src/FormatterJsonSDLRPCv2Test.cpp')
-rw-r--r--test/components/json_handler/src/FormatterJsonSDLRPCv2Test.cpp298
1 files changed, 0 insertions, 298 deletions
diff --git a/test/components/json_handler/src/FormatterJsonSDLRPCv2Test.cpp b/test/components/json_handler/src/FormatterJsonSDLRPCv2Test.cpp
deleted file mode 100644
index 84a3d3009..000000000
--- a/test/components/json_handler/src/FormatterJsonSDLRPCv2Test.cpp
+++ /dev/null
@@ -1,298 +0,0 @@
-// Copyright (c) 2013, Ford Motor Company
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are met:
-//
-// Redistributions of source code must retain the above copyright notice, this
-// list of conditions and the following disclaimer.
-//
-// Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the following
-// disclaimer in the documentation and/or other materials provided with the
-// distribution.
-//
-// Neither the name of the Ford Motor Company nor the names of its contributors
-// may be used to endorse or promote products derived from this software
-// without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE
-// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
-// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
-// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
-// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-// POSSIBILITY OF SUCH DAMAGE.
-
-#include "gtest/gtest.h"
-#include "gmock/gmock.h"
-
-#include <iostream>
-#include "json/json.h"
-
-#include "formatters/CFormatterJsonSDLRPCv2.hpp"
-#include "formatters/CSmartFactory.hpp"
-
-#include "smart_objects/array_schema_item.h"
-#include "smart_objects/bool_schema_item.h"
-#include "smart_objects/object_schema_item.h"
-#include "smart_objects/string_schema_item.h"
-#include "smart_objects/enum_schema_item.h"
-#include "smart_objects/number_schema_item.h"
-#include "smart_objects/schema_item_parameter.h"
-
-#include "json_handler/formatter_test_helper.h"
-
-
-namespace test { namespace components { namespace json_handler { namespace formatters {
-
-namespace function_id {
-/**
- * @brief Enumeration FunctionID.
- */
-enum Type {
- /**
- * @brief INVALID_ENUM.
- */
- INVALID_ENUM = -1,
-
- /**
- * @brief RegisterAppInterface.
- */
- kRegisterAppInterface,
-
- /**
- * @brief UnregisterAppInterface.
- */
- kUnregisterAppInterface,
-
- /**
- * @brief SetGlobalProperties.
- */
- kSetGlobalProperties,
-};
-} //namespace FunctionID
-
-namespace message_type {
-/**
- * @brief Enumeration messageType.
- */
-enum Type {
- /**
- * @brief INVALID_ENUM.
- */
- INVALID_ENUM = -1,
-
- /**
- * @brief request.
- */
- kRequest,
-
- /**
- * @brief response.
- */
- kResponse,
-
- /**
- * @brief notification.
- */
- kNotification
-};
-} //namespace messageType
-
-
- using namespace NsSmartDeviceLink::NsJSONHandler::strings;
- typedef NsSmartDeviceLink::NsJSONHandler::Formatters::CFormatterJsonSDLRPCv2 FormatterV2;
-
- TEST_F(CFormatterTestHelper, test_fromObjToSDLRPCv2AndBack)
- {
- Json::Value value; // just a quick workaround to avoid undefined reference to Json
-
- std::string str;
- NsSmartDeviceLink::NsSmartObjects::SmartObject srcObj;
- NsSmartDeviceLink::NsSmartObjects::SmartObject dstObj;
-
- fillTestObject(srcObj);
- srcObj[S_PARAMS][S_PROTOCOL_VERSION] = 2;
-
- // SmartObjects --> JSON
- NsSmartDeviceLink::NsJSONHandler::Formatters::CFormatterJsonSDLRPCv2::toString(srcObj, str);
-
- //std::cout << str << std::endl;
-
- // JSON --> SmartObjects
- NsSmartDeviceLink::NsJSONHandler::Formatters::CFormatterJsonSDLRPCv2::
- fromString<std::string, std::string>(str, dstObj, "some function", "request", 12);
-
-
- compareObjects(srcObj, dstObj);
- }
-
- TEST_F(CFormatterTestHelper, test_fromJsonSDLRPCv2)
- {
- std::string str = "\
- {\
- \"appID\": \"APP ID\",\
- \"appName\": \"APP NAME\",\
- \"appType\": [\"SYSTEM\", \"COMMUNICATION\"],\
- \"hmiDisplayLanguageDesired\": \"RU-RU\",\
- \"isMediaApplication\": true,\
- \"languageDesired\": \"EN-US\",\
- \"ngnMediaScreenAppName\": \"SCREEN NAME\",\
- \"syncMsgVersion\": {\
- \"majorVersion\": 2,\
- \"minorVersion\": 10\
- },\
- \"ttsName\": [{\
- \"text\": \"ABC\",\
- \"type\": \"TEXT\"\
- }],\
- \"vrSynonyms\": [\"Synonym 1\", \"Synonym 2\"]\
- }";
-
- NsSmartDeviceLink::NsSmartObjects::SmartObject obj;
- bool result;
-
- result = NsSmartDeviceLink::NsJSONHandler::Formatters::CFormatterJsonSDLRPCv2::
- fromString<std::string, std::string>(str, obj, "some name", "request", 12);
-
- ASSERT_TRUE(result) << "Error parsing JSON string";
-
- ASSERT_EQ("some name", obj[S_PARAMS][S_FUNCTION_ID].asString());
- ASSERT_EQ(12, obj[S_PARAMS][S_CORRELATION_ID].asInt());
- ASSERT_EQ(2, obj[S_PARAMS][S_PROTOCOL_VERSION].asInt());
- ASSERT_EQ(10, obj[S_MSG_PARAMS]["syncMsgVersion"]["minorVersion"].asInt());
- ASSERT_EQ("TEXT", obj[S_MSG_PARAMS]["ttsName"][0]["type"].asString());
- ASSERT_EQ("Synonym 2", obj[S_MSG_PARAMS]["vrSynonyms"][1].asString());
- }
-
- TEST_F(CFormatterTestHelper, test_SDLRPCv2_EmptyMapArrayTest) {
- using namespace NsSmartDeviceLink::NsSmartObjects;
-
- SmartObject srcObj, dstObj;
- std::string str;
-
- fillTestObject(srcObj);
- srcObj[S_PARAMS][S_PROTOCOL_VERSION] = 2;
- srcObj[S_PARAMS][S_MESSAGE_TYPE] = 0;
- srcObj[S_PARAMS][S_CORRELATION_ID] = 0;
- srcObj[S_PARAMS][S_FUNCTION_ID] = 0;
- srcObj[S_MSG_PARAMS]["EmptyArray"] = SmartObject(SmartType_Array);
- srcObj[S_MSG_PARAMS]["EmptyMap"] = SmartObject(SmartType_Map);
- srcObj[S_MSG_PARAMS]["AnotherEmptyArray"] = srcObj[S_MSG_PARAMS]["EmptyArray"];
- srcObj[S_MSG_PARAMS]["AnotherEmptyMap"] = srcObj[S_MSG_PARAMS]["EmptyMap"];
-
- // SmartObjects --> JSON
- FormatterV2::toString(srcObj, str);
-
- // JSON --> SmartObjects
- FormatterV2::fromString<int, int>(str, dstObj, 0, 0, 0);
-
- compareObjects(srcObj, dstObj);
- }
-
- TEST_F(CFormatterTestHelper, test_CorrelationIdTest) {
-
- std::string str = "\
- {\
- \"appID\": \"APP ID\",\
- \"appName\": \"APP NAME\",\
- \"appType\": [\"SYSTEM\", \"COMMUNICATION\"],\
- \"syncMsgVersion\": {\
- \"majorVersion\": 2,\
- \"minorVersion\": 10\
- },\
- \"ttsName\": [{\
- \"text\": \"ABC\",\
- \"type\": \"TEXT\"\
- }],\
- \"vrSynonyms\": [\"Synonym 1\", \"Synonym 2\"]\
- }";
-
- NsSmartDeviceLink::NsSmartObjects::SmartObject obj1, obj2;
- bool result;
-
- result = NsSmartDeviceLink::NsJSONHandler::Formatters::CFormatterJsonSDLRPCv2::
- fromString<std::string, std::string>(str, obj1, "some name", "notification");
-
- ASSERT_TRUE(result) << "Error parsing JSON string";
-
- ASSERT_FALSE(obj1[S_PARAMS].keyExists(S_CORRELATION_ID)) << "CorrelationID exists for notification";
-
- result = NsSmartDeviceLink::NsJSONHandler::Formatters::CFormatterJsonSDLRPCv2::
- fromString<std::string, std::string>(str, obj2, "some name", "request", 10);
-
- ASSERT_TRUE(result) << "Error parsing JSON string";
-
- ASSERT_TRUE(obj2[S_PARAMS].keyExists(S_CORRELATION_ID)) << "CorrelationID doesn't exist for request";
- }
-}}}}
-
-namespace NsSmartDeviceLink {
-namespace NsSmartObjects {
-
-template<>
-const EnumConversionHelper<test::components::json_handler::formatters::function_id::Type>::EnumToCStringMap
-EnumConversionHelper<test::components::json_handler::formatters::function_id::Type>::enum_to_cstring_map_ =
- EnumConversionHelper<test::components::json_handler::formatters::function_id::Type>::InitEnumToCStringMap();
-
-template<>
-const EnumConversionHelper<test::components::json_handler::formatters::function_id::Type>::CStringToEnumMap
-EnumConversionHelper<test::components::json_handler::formatters::function_id::Type>::cstring_to_enum_map_ =
- EnumConversionHelper<test::components::json_handler::formatters::function_id::Type>::InitCStringToEnumMap();
-
-template<>
-const char* const
-EnumConversionHelper<test::components::json_handler::formatters::function_id::Type>::cstring_values_[] = {
- "RegisterAppInterface",
- "UnregisterAppInterface",
- "SetGlobalProperties"
-};
-
-template<>
-const test::components::json_handler::formatters::function_id::Type
-EnumConversionHelper<test::components::json_handler::formatters::function_id::Type>::enum_values_[] = {
- test::components::json_handler::formatters::function_id::kRegisterAppInterface,
- test::components::json_handler::formatters::function_id::kUnregisterAppInterface,
- test::components::json_handler::formatters::function_id::kSetGlobalProperties
-};
-
-template<>
-const EnumConversionHelper<test::components::json_handler::formatters::message_type::Type>::EnumToCStringMap
-EnumConversionHelper<test::components::json_handler::formatters::message_type::Type>::enum_to_cstring_map_ =
- EnumConversionHelper<test::components::json_handler::formatters::message_type::Type>::InitEnumToCStringMap();
-
-template<>
-const EnumConversionHelper<test::components::json_handler::formatters::message_type::Type>::CStringToEnumMap
-EnumConversionHelper<test::components::json_handler::formatters::message_type::Type>::cstring_to_enum_map_ =
- EnumConversionHelper<test::components::json_handler::formatters::message_type::Type>::InitCStringToEnumMap();
-
-template<>
-const char* const
-EnumConversionHelper<test::components::json_handler::formatters::message_type::Type>::cstring_values_[] = {
- "request",
- "response",
- "notification"
-};
-
-template<>
-const test::components::json_handler::formatters::message_type::Type
-EnumConversionHelper<test::components::json_handler::formatters::message_type::Type>::enum_values_[] = {
- test::components::json_handler::formatters::message_type::kRequest,
- test::components::json_handler::formatters::message_type::kResponse,
- test::components::json_handler::formatters::message_type::kNotification
-};
-
-}
-}
-
-int main(int argc, char **argv)
-{
- ::testing::InitGoogleMock(&argc, argv);
- return RUN_ALL_TESTS();
-}
-