summaryrefslogtreecommitdiff
path: root/src/components/application_manager/test/resumption/resumption_data_db_test.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/application_manager/test/resumption/resumption_data_db_test.cc')
-rw-r--r--src/components/application_manager/test/resumption/resumption_data_db_test.cc474
1 files changed, 32 insertions, 442 deletions
diff --git a/src/components/application_manager/test/resumption/resumption_data_db_test.cc b/src/components/application_manager/test/resumption/resumption_data_db_test.cc
index 0eddcb5a08..9e04c869c5 100644
--- a/src/components/application_manager/test/resumption/resumption_data_db_test.cc
+++ b/src/components/application_manager/test/resumption/resumption_data_db_test.cc
@@ -36,7 +36,7 @@
#include "application_manager/mock_application.h"
#include "application_manager/mock_application_manager_settings.h"
#include "interfaces/MOBILE_API.h"
-#include "utils/sql_database.h"
+#include "utils/sqlite_wrapper/sql_database.h"
#include "utils/sqlite_wrapper/sql_query.h"
#include "utils/make_shared.h"
#include "utils/file_system.h"
@@ -46,25 +46,15 @@
#include "application_manager/resumption/resumption_sql_queries.h"
#include "application_manager/resumption/resumption_data_db.h"
-#include "utils/sqlite_wrapper/sql_database_impl.h"
-#include "utils/mock_sql_database.h"
-#include "application_manager/mock_application_manager_settings.h"
-
namespace test {
namespace components {
namespace resumption_test {
using ::testing::NiceMock;
-using ::testing::Return;
-using ::testing::ReturnNull;
using ::testing::ReturnRef;
-using ::testing::_;
using application_manager_test::MockApplication;
-using ::test::components::utils::dbms::MockSQLDatabase;
-
namespace am = application_manager;
-namespace smart_objects = ::NsSmartDeviceLink::NsSmartObjects;
using namespace file_system;
using namespace resumption;
@@ -77,8 +67,7 @@ const std::string kPath =
class ResumptionDataDBTest : public ResumptionDataTest {
protected:
void SetUp() OVERRIDE {
- app_mock = ::utils::MakeShared<
- NiceMock<application_manager_test::MockApplication> >();
+ app_mock = utils::MakeShared<NiceMock<MockApplication> >();
policy_app_id_ = "test_policy_app_id";
app_id_ = 10;
is_audio_ = true;
@@ -89,17 +78,19 @@ class ResumptionDataDBTest : public ResumptionDataTest {
grammar_id_ = 16;
}
void TearDown() OVERRIDE {
- ::utils::dbms::SQLQuery query(test_db());
+ utils::dbms::SQLQuery query(test_db());
EXPECT_TRUE(query.Prepare(remove_all_tables));
EXPECT_TRUE(query.Exec());
}
static void SetUpTestCase() {
+ kDatabaseName = "resumption";
if (is_in_file) {
path_ = "test_storage";
- CreateDirectory("./" + path_);
- test_db_ = new ::utils::dbms::SQLDatabaseImpl(kDatabaseName);
- test_db_->set_path(path_ + "/");
+ CreateDirectory(file_system::CurrentWorkingDirectory() + "/" + path_);
+ CreateDirectory(kPath);
+ test_db_ = new utils::dbms::SQLDatabase(kDatabaseName);
+ test_db_->set_path(kPath + "/");
res_db_ = new TestResumptionDataDB(In_File_Storage);
} else {
res_db_ = new TestResumptionDataDB(In_Memory_Storage);
@@ -110,7 +101,7 @@ class ResumptionDataDBTest : public ResumptionDataTest {
EXPECT_TRUE(test_db_->IsReadWrite());
}
- static ::utils::dbms::SQLDatabase* test_db_;
+ static utils::dbms::SQLDatabase* test_db_;
static std::string kDatabaseName;
static std::string path_;
@@ -122,7 +113,7 @@ class ResumptionDataDBTest : public ResumptionDataTest {
delete res_db_;
}
- ::utils::dbms::SQLDatabase* test_db() {
+ utils::dbms::SQLDatabase* test_db() {
return test_db_;
}
std::string path() {
@@ -130,8 +121,8 @@ class ResumptionDataDBTest : public ResumptionDataTest {
}
void SetZeroIgnOffTime() {
- ::utils::dbms::SQLQuery query(test_db());
- EXPECT_TRUE(query.Prepare(resumption::KUpdateLastIgnOffTime));
+ utils::dbms::SQLQuery query(test_db());
+ EXPECT_TRUE(query.Prepare(KUpdateLastIgnOffTime));
query.Bind(0, 0);
EXPECT_TRUE(query.Exec());
}
@@ -189,16 +180,16 @@ class ResumptionDataDBTest : public ResumptionDataTest {
void CheckCharacters(int64_t global_properties_key);
void CheckVRHelpItem(int64_t global_properties_key);
- void BindId(::utils::dbms::SQLQuery& query);
+ void BindId(utils::dbms::SQLQuery& query);
};
-::utils::dbms::SQLDatabase* ResumptionDataDBTest::test_db_ = NULL;
+utils::dbms::SQLDatabase* ResumptionDataDBTest::test_db_ = NULL;
TestResumptionDataDB* ResumptionDataDBTest::res_db_ = NULL;
std::string ResumptionDataDBTest::kDatabaseName = "";
std::string ResumptionDataDBTest::path_ = "";
void ResumptionDataDBTest::CheckSavedDB() {
- ::utils::dbms::SQLQuery query_checks(test_db());
+ utils::dbms::SQLQuery query_checks(test_db());
EXPECT_TRUE(query_checks.Prepare(kChecksResumptionData));
EXPECT_TRUE(query_checks.Exec());
EXPECT_EQ(1, query_checks.GetInteger(0));
@@ -215,7 +206,7 @@ void ResumptionDataDBTest::CheckSavedDB() {
}
void ResumptionDataDBTest::CheckExistenceApplication() {
- ::utils::dbms::SQLQuery query(test_db());
+ utils::dbms::SQLQuery query(test_db());
EXPECT_TRUE(query.Prepare(kCheckApplication));
query.Bind(0, kMacAddress_);
query.Bind(1, policy_app_id_);
@@ -224,7 +215,7 @@ void ResumptionDataDBTest::CheckExistenceApplication() {
}
void ResumptionDataDBTest::CheckAppData() {
- ::utils::dbms::SQLQuery query(test_db());
+ utils::dbms::SQLQuery query(test_db());
EXPECT_TRUE(query.Prepare(kSelectAppTable));
BindId(query);
EXPECT_TRUE(query.Exec());
@@ -242,7 +233,7 @@ void ResumptionDataDBTest::CheckAppData() {
}
void ResumptionDataDBTest::CheckGlobalProportiesData() {
- ::utils::dbms::SQLQuery select_globalproperties(test_db());
+ utils::dbms::SQLQuery select_globalproperties(test_db());
EXPECT_TRUE(select_globalproperties.Prepare(kSelectCountGlobalProperties));
BindId(select_globalproperties);
@@ -272,7 +263,7 @@ void ResumptionDataDBTest::CheckGlobalProportiesData() {
select_globalproperties.GetString(7));
EXPECT_FALSE(select_globalproperties.IsNull(3));
- ::utils::dbms::SQLQuery select_image(test_db());
+ utils::dbms::SQLQuery select_image(test_db());
EXPECT_TRUE(select_image.Prepare(kSelectImage));
select_image.Bind(0, select_globalproperties.GetLongInt(3));
EXPECT_TRUE(select_image.Exec());
@@ -282,7 +273,7 @@ void ResumptionDataDBTest::CheckGlobalProportiesData() {
select_image.GetString(1));
}
if (!select_globalproperties.IsNull(8)) {
- ::utils::dbms::SQLQuery select_tts_chunk(test_db());
+ utils::dbms::SQLQuery select_tts_chunk(test_db());
EXPECT_TRUE(select_tts_chunk.Prepare(kSelectTTSChunk));
select_tts_chunk.Bind(0, select_globalproperties.GetLongInt(8));
EXPECT_TRUE(select_tts_chunk.Exec());
@@ -295,7 +286,7 @@ void ResumptionDataDBTest::CheckGlobalProportiesData() {
help_prompt_idx++;
}
if (!select_globalproperties.IsNull(9)) {
- ::utils::dbms::SQLQuery select_tts_chunk(test_db());
+ utils::dbms::SQLQuery select_tts_chunk(test_db());
EXPECT_TRUE(select_tts_chunk.Prepare(kSelectTTSChunk));
select_tts_chunk.Bind(0, select_globalproperties.GetLongInt(9));
EXPECT_TRUE(select_tts_chunk.Exec());
@@ -313,13 +304,13 @@ void ResumptionDataDBTest::CheckGlobalProportiesData() {
}
}
void ResumptionDataDBTest::CheckVRHelpItem(int64_t global_properties_key) {
- ::utils::dbms::SQLQuery checks_vrhelp_item(test_db());
+ utils::dbms::SQLQuery checks_vrhelp_item(test_db());
EXPECT_TRUE(checks_vrhelp_item.Prepare(kChecksVrHelpItem));
checks_vrhelp_item.Bind(0, global_properties_key);
EXPECT_TRUE(checks_vrhelp_item.Exec());
EXPECT_NE(0, checks_vrhelp_item.GetInteger(0));
if (!checks_vrhelp_item.GetInteger(0)) {
- ::utils::dbms::SQLQuery select_vrhelp_item(test_db());
+ utils::dbms::SQLQuery select_vrhelp_item(test_db());
EXPECT_TRUE(select_vrhelp_item.Prepare(kSelectVrHelpItem));
select_vrhelp_item.Bind(0, global_properties_key);
size_t vr_help_item_idx = 0;
@@ -335,13 +326,13 @@ void ResumptionDataDBTest::CheckVRHelpItem(int64_t global_properties_key) {
}
void ResumptionDataDBTest::CheckCharacters(int64_t global_properties_key) {
- ::utils::dbms::SQLQuery checks_characters(test_db());
+ utils::dbms::SQLQuery checks_characters(test_db());
EXPECT_TRUE(checks_characters.Prepare(kChecksCharacter));
checks_characters.Bind(0, global_properties_key);
EXPECT_TRUE(checks_characters.Exec());
EXPECT_NE(0, checks_characters.GetInteger(0));
if (!checks_characters.GetInteger(0)) {
- ::utils::dbms::SQLQuery select_characters(test_db());
+ utils::dbms::SQLQuery select_characters(test_db());
EXPECT_TRUE(select_characters.Prepare(kSelectCharacter));
select_characters.Bind(0, global_properties_key);
size_t characters_idx = 0;
@@ -355,7 +346,7 @@ void ResumptionDataDBTest::CheckCharacters(int64_t global_properties_key) {
}
void ResumptionDataDBTest::CheckSubmenuData() {
- ::utils::dbms::SQLQuery select_submenu(test_db());
+ utils::dbms::SQLQuery select_submenu(test_db());
EXPECT_TRUE(select_submenu.Prepare(kSelectCountSubMenu));
BindId(select_submenu);
@@ -378,7 +369,7 @@ void ResumptionDataDBTest::CheckSubmenuData() {
}
void ResumptionDataDBTest::CheckCommandsData() {
- ::utils::dbms::SQLQuery select_commands(test_db());
+ utils::dbms::SQLQuery select_commands(test_db());
EXPECT_TRUE(select_commands.Prepare(kSelectCountCommands));
BindId(select_commands);
@@ -427,7 +418,7 @@ void ResumptionDataDBTest::CheckCommandsData() {
}
void ResumptionDataDBTest::CheckChoiceSetData() {
- ::utils::dbms::SQLQuery select_choice_set(test_db());
+ utils::dbms::SQLQuery select_choice_set(test_db());
EXPECT_TRUE(select_choice_set.Prepare(kSelectCountChoiceSet));
BindId(select_choice_set);
EXPECT_TRUE(select_choice_set.Exec());
@@ -478,7 +469,7 @@ void ResumptionDataDBTest::CheckChoiceSetData() {
EXPECT_EQ(tertiary_text, select_choice_set.GetString(7));
EXPECT_FALSE(select_choice_set.IsNull(8));
- ::utils::dbms::SQLQuery select_image(test_db());
+ utils::dbms::SQLQuery select_image(test_db());
EXPECT_TRUE(select_image.Prepare(kSelectImage));
select_image.Bind(0, select_choice_set.GetLongInt(8));
EXPECT_TRUE(select_image.Exec());
@@ -515,7 +506,7 @@ void ResumptionDataDBTest::CheckChoiceSetData() {
}
void ResumptionDataDBTest::CheckAppFilesData() {
- ::utils::dbms::SQLQuery query(test_db());
+ utils::dbms::SQLQuery query(test_db());
EXPECT_TRUE(query.Prepare(kSelectCountFiles));
BindId(query);
EXPECT_TRUE(query.Exec());
@@ -538,414 +529,13 @@ void ResumptionDataDBTest::CheckAppFilesData() {
}
}
-void ResumptionDataDBTest::BindId(::utils::dbms::SQLQuery& query) {
+void ResumptionDataDBTest::BindId(utils::dbms::SQLQuery& query) {
query.Bind(0, policy_app_id_);
query.Bind(1, kMacAddress_);
}
-class ResumptionDBTest_WithMockStorage : public ::testing::Test {
- public:
- ResumptionDBTest_WithMockStorage()
- // Mock database will be destroyed by resumption_data_db in ~Destr.
- : mock_database_(new MockSQLDatabase()),
- resumption_data_db_(mock_database_, mock_am_) {}
-
- void SetUp() OVERRIDE {
- ON_CALL(mock_am_settings_, attempts_to_open_resumption_db())
- .WillByDefault(Return(1));
- ON_CALL(mock_am_settings_, open_attempt_timeout_ms_resumption_db())
- .WillByDefault(Return(1));
- ON_CALL(mock_am_, get_settings())
- .WillByDefault(ReturnRef(mock_am_settings_));
- }
- void TearDown() OVERRIDE {
- EXPECT_CALL(*mock_database_, Close());
- }
-
- void InitRealDB() {
- real_db_.Open();
-
- EXPECT_CALL(*mock_database_, Open()).WillOnce(Return(true));
- EXPECT_CALL(*mock_database_, IsReadWrite()).WillOnce(Return(true));
- EXPECT_CALL(*mock_database_, conn())
- .WillRepeatedly(Return(real_db_.conn()));
-
- EXPECT_TRUE(resumption_data_db_.Init());
- }
-
- void ApplicationParamsCreateCalls(MockApplication* mock_app) {
- EXPECT_CALL(*mock_app, curHash()).WillOnce(ReturnRef(kEmptyString_));
- EXPECT_CALL(*mock_app, get_grammar_id()).WillOnce(Return(1u));
- EXPECT_CALL(*mock_app, app_id()).WillRepeatedly(Return(1u));
- EXPECT_CALL(*mock_app, hmi_app_id()).WillOnce(Return(1u));
- EXPECT_CALL(*mock_app, IsAudioApplication()).WillOnce(Return(true));
- EXPECT_CALL(mock_am_, IsAppSubscribedForWayPoints(_))
- .WillOnce(Return(false));
- }
-
- void PrepareApplicationSO(smart_objects::SmartObject& app_data) {
- app_data[ ::application_manager::strings::app_id] = "1";
- app_data[ ::application_manager::strings::hash_id] = "1";
- app_data[ ::application_manager::strings::grammar_id] = 1;
- app_data[ ::application_manager::strings::connection_key] = 1;
- app_data[ ::application_manager::strings::hmi_app_id] = 1;
- app_data[ ::application_manager::strings::hmi_level] = HMILevel::HMI_FULL;
- app_data[ ::application_manager::strings::is_media_application] = true;
- app_data[ ::application_manager::strings::subscribed_for_way_points] =
- false;
- app_data[ ::application_manager::strings::ign_off_count] = 0;
- app_data[ ::application_manager::strings::device_id] = "0";
- }
-
- void GetCorrectAppData(smart_objects::SmartObject& data) {
- data =
- smart_objects::SmartObject(smart_objects::SmartType::SmartType_Array);
- data[0] = smart_objects::SmartObject(smart_objects::SmartType_Map);
-
- smart_objects::SmartObject& application_data = data[0];
-
- application_data["globalProperties"] =
- smart_objects::SmartObject(smart_objects::SmartType_Map);
- application_data["applicationFiles"] =
- smart_objects::SmartObject(smart_objects::SmartType_Array);
- application_data["applicationSubMenus"] =
- smart_objects::SmartObject(smart_objects::SmartType_Array);
- application_data["applicationCommands"] =
- smart_objects::SmartObject(smart_objects::SmartType_Array);
- application_data["subscribtions"] =
- smart_objects::SmartObject(smart_objects::SmartType_Map);
- application_data["applicationChoiceSets"] =
- smart_objects::SmartObject(smart_objects::SmartType_Array);
-
- // Filling app_data with correct application values
- PrepareApplicationSO(application_data);
- }
-
- void TestIncorrectAdditionalAppDataForWriting(const std::string& data_key) {
- // Processing of Application_data needed real DB frow write
- InitRealDB();
- // Correct data smart object
- smart_objects::SmartObject data;
- GetCorrectAppData(data);
- smart_objects::SmartObject& application_data = data[0];
-
- application_data[data_key][0] = kEmptyString_;
-
- EXPECT_CALL(*mock_database_, BeginTransaction()).Times(1);
- EXPECT_CALL(*mock_database_, conn())
- // Two times return reall db connection to correct writing
- // of app_data to DB
- .WillOnce(Return(real_db_.conn()))
- .WillOnce(Return(real_db_.conn()))
- // Null connection for unsuccessful processing of FilesData
- .WillOnce(ReturnNull());
- EXPECT_CALL(*mock_database_, RollbackTransaction()).Times(1);
- EXPECT_FALSE(resumption_data_db_.SaveAllData(data));
- }
-
- void AddApplicationsToDB(smart_objects::SmartObject& apps) {
- EXPECT_CALL(*mock_database_, BeginTransaction()).Times(1);
- EXPECT_CALL(*mock_database_, conn())
- .WillRepeatedly(Return(real_db_.conn()));
- EXPECT_CALL(*mock_database_, RollbackTransaction()).Times(0);
- EXPECT_CALL(*mock_database_, CommitTransaction()).Times(1);
-
- EXPECT_TRUE(resumption_data_db_.SaveAllData(apps));
- }
-
- MockSQLDatabase* mock_database_;
- NiceMock<application_manager_test::MockApplicationManager> mock_am_;
- NiceMock<application_manager_test::MockApplicationManagerSettings>
- mock_am_settings_;
- ResumptionDataDB resumption_data_db_;
- ::utils::dbms::SQLDatabaseImpl real_db_;
- const std::string kEmptyString_ = "";
-};
-
-TEST_F(ResumptionDBTest_WithMockStorage, Init_DBNotOpened_AttemptsOpened) {
- EXPECT_CALL(*mock_database_, Open())
- .WillOnce(Return(false))
- .WillOnce(Return(true));
- EXPECT_CALL(*mock_database_, IsReadWrite()).WillOnce(Return(false));
-
- EXPECT_FALSE(resumption_data_db_.Init());
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage,
- Init_DBNotOpened_AttemptsNotOpenedToo) {
- EXPECT_CALL(*mock_database_, Open()).WillRepeatedly(Return(false));
- EXPECT_CALL(*mock_database_, IsReadWrite()).Times(0);
-
- EXPECT_FALSE(resumption_data_db_.Init());
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, Init_CannotCreateSchema) {
- EXPECT_CALL(*mock_database_, Open()).WillOnce(Return(true));
- EXPECT_CALL(*mock_database_, IsReadWrite()).WillOnce(Return(true));
- EXPECT_CALL(*mock_database_, conn()).WillOnce(ReturnNull());
-
- EXPECT_FALSE(resumption_data_db_.Init());
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, Init_CannotChecksResumptionData) {
- ::utils::dbms::SQLDatabaseImpl real_db;
- real_db.Open();
-
- EXPECT_CALL(*mock_database_, Open()).WillOnce(Return(true));
- EXPECT_CALL(*mock_database_, IsReadWrite()).WillOnce(Return(true));
- EXPECT_CALL(*mock_database_, conn())
- .WillOnce(Return(real_db.conn()))
- .WillOnce(ReturnNull());
-
- EXPECT_FALSE(resumption_data_db_.Init());
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, Init_CannotInsertInitData) {
- ::utils::dbms::SQLDatabaseImpl real_db;
- real_db.Open();
-
- EXPECT_CALL(*mock_database_, Open()).WillOnce(Return(true));
- EXPECT_CALL(*mock_database_, IsReadWrite()).WillOnce(Return(true));
- EXPECT_CALL(*mock_database_, conn())
- .WillOnce(Return(real_db.conn()))
- .WillOnce(Return(real_db.conn()))
- .WillOnce(ReturnNull());
-
- EXPECT_FALSE(resumption_data_db_.Init());
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, Init_Positive) {
- ::utils::dbms::SQLDatabaseImpl real_db;
- real_db.Open();
-
- EXPECT_CALL(*mock_database_, Open()).WillOnce(Return(true));
- EXPECT_CALL(*mock_database_, IsReadWrite()).WillOnce(Return(true));
- EXPECT_CALL(*mock_database_, conn()).WillRepeatedly(Return(real_db.conn()));
-
- EXPECT_TRUE(resumption_data_db_.Init());
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, RefreshDB_CannotDropSchema) {
- EXPECT_CALL(*mock_database_, conn()).WillOnce(ReturnNull());
-
- EXPECT_FALSE(resumption_data_db_.RefreshDB());
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, RefreshDB_CannotCreateSchema) {
- ::utils::dbms::SQLDatabaseImpl real_db;
- real_db.Open();
-
- EXPECT_CALL(*mock_database_, conn())
- .WillOnce(Return(real_db.conn()))
- .WillOnce(ReturnNull());
-
- EXPECT_FALSE(resumption_data_db_.RefreshDB());
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, RefreshDB_CannotInsertInitData) {
- ::utils::dbms::SQLDatabaseImpl real_db;
- real_db.Open();
-
- EXPECT_CALL(*mock_database_, conn())
- .WillOnce(Return(real_db.conn()))
- .WillOnce(Return(real_db.conn()))
- .WillOnce(ReturnNull());
-
- EXPECT_FALSE(resumption_data_db_.RefreshDB());
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, RefreshDB_Positive) {
- ::utils::dbms::SQLDatabaseImpl real_db;
- real_db.Open();
-
- EXPECT_CALL(*mock_database_, conn()).WillRepeatedly(Return(real_db.conn()));
-
- EXPECT_TRUE(resumption_data_db_.RefreshDB());
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage,
- IsDBVersionActual_CannotSelectDBVersion) {
- EXPECT_CALL(*mock_database_, conn()).WillOnce(ReturnNull());
-
- EXPECT_FALSE(resumption_data_db_.IsDBVersionActual());
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, IsDBVersionActual_Positive) {
- ::utils::dbms::SQLDatabaseImpl real_db;
- real_db.Open();
-
- EXPECT_CALL(*mock_database_, conn()).WillOnce(Return(real_db.conn()));
-
- EXPECT_FALSE(resumption_data_db_.IsDBVersionActual());
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, UpdateDBVersion_CannotPrepare) {
- EXPECT_CALL(*mock_database_, conn()).WillOnce(ReturnNull());
-
- EXPECT_FALSE(resumption_data_db_.UpdateDBVersion());
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, UpdateDBVersion_Positive) {
- ::utils::dbms::SQLDatabaseImpl real_db;
- real_db.Open();
-
- EXPECT_CALL(*mock_database_, conn()).WillOnce(Return(real_db.conn()));
-
- EXPECT_FALSE(resumption_data_db_.UpdateDBVersion());
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage,
- SaveApplication_AppNotChanged_AppExist) {
- InitRealDB();
- MockApplication* app_ptr = new MockApplication();
- application_manager::ApplicationSharedPtr app_sptr(app_ptr);
-
- const std::string kPolicyAppId = "1";
- const std::string kMacAdress = "xx";
-
- ApplicationParamsCreateCalls(app_ptr);
-
- EXPECT_CALL(*app_ptr, policy_app_id()).WillRepeatedly(Return(kPolicyAppId));
- EXPECT_CALL(*app_ptr, mac_address()).WillRepeatedly(ReturnRef(kMacAdress));
- EXPECT_CALL(*app_ptr, is_application_data_changed())
- .WillRepeatedly(Return(false));
- EXPECT_CALL(*app_ptr, hmi_level()).WillRepeatedly(Return(HMILevel::HMI_FULL));
- EXPECT_CALL(*mock_database_, conn()).WillRepeatedly(Return(real_db_.conn()));
- EXPECT_CALL(*mock_database_, Backup()).Times(2);
-
- // App_not exists -> adding it to db
- resumption_data_db_.SaveApplication(app_sptr);
- // App exists update it in DB
- resumption_data_db_.SaveApplication(app_sptr);
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage,
- SaveApplication_AppNotChanged_AppExist_DBProblem) {
- InitRealDB();
- MockApplication* app_ptr = new MockApplication();
- application_manager::ApplicationSharedPtr app_sptr(app_ptr);
-
- const std::string kPolicyAppId = "1";
- const std::string kMacAdress = "xx";
-
- ApplicationParamsCreateCalls(app_ptr);
-
- EXPECT_CALL(*app_ptr, policy_app_id()).WillRepeatedly(Return(kPolicyAppId));
- EXPECT_CALL(*app_ptr, mac_address()).WillRepeatedly(ReturnRef(kMacAdress));
- EXPECT_CALL(*app_ptr, is_application_data_changed())
- .WillRepeatedly(Return(false));
- EXPECT_CALL(*app_ptr, hmi_level()).WillRepeatedly(Return(HMILevel::HMI_FULL));
- EXPECT_CALL(*mock_database_, conn())
- .WillOnce(Return(real_db_.conn()))
- .WillOnce(Return(real_db_.conn()))
- .WillOnce(Return(real_db_.conn()))
- .WillOnce(ReturnNull());
- EXPECT_CALL(*mock_database_, Backup()).Times(1);
-
- // App_not exists -> adding it to db
- resumption_data_db_.SaveApplication(app_sptr);
- // App exists update it in DB
- resumption_data_db_.SaveApplication(app_sptr);
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, SaveAllData_DataNotArray) {
- smart_objects::SmartObject data(smart_objects::SmartType::SmartType_Map);
-
- EXPECT_CALL(*mock_database_, BeginTransaction()).Times(0);
-
- EXPECT_FALSE(resumption_data_db_.SaveAllData(data));
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage,
- SaveAllData_IncorrectGlobalProperties) {
- // Correct smart type
- smart_objects::SmartObject data(smart_objects::SmartType::SmartType_Array);
- data[0] = smart_objects::SmartObject(smart_objects::SmartType_Map);
- smart_objects::SmartObject& application_data = data[0];
-
- application_data["globalProperties"]["property_1"] = 1u;
-
- EXPECT_CALL(*mock_database_, BeginTransaction()).Times(1);
- EXPECT_CALL(*mock_database_, RollbackTransaction()).Times(1);
- // Will create error while processing globalProperties
- EXPECT_CALL(*mock_database_, conn()).WillOnce(ReturnNull());
-
- EXPECT_FALSE(resumption_data_db_.SaveAllData(data));
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, SaveAllData_IncorrectApplicationData) {
- // Correct smart type
- smart_objects::SmartObject data(smart_objects::SmartType::SmartType_Array);
- data[0] = smart_objects::SmartObject(smart_objects::SmartType_Map);
- smart_objects::SmartObject& application_data = data[0];
- // When global properties empty processing returns true
- application_data["globalProperties"] =
- smart_objects::SmartObject(smart_objects::SmartType_Map);
-
- // App data havent any fields for application (app_id, hmi_level)
-
- EXPECT_CALL(*mock_database_, BeginTransaction()).Times(1);
- EXPECT_CALL(*mock_database_, RollbackTransaction()).Times(1);
-
- EXPECT_FALSE(resumption_data_db_.SaveAllData(data));
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, SaveAllData_IncorrectFilesData) {
- TestIncorrectAdditionalAppDataForWriting("applicationFiles");
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, SaveAllData_IncorrectSubMenu) {
- TestIncorrectAdditionalAppDataForWriting("applicationSubMenus");
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, SaveAllData_IncorrectCommandsData) {
- TestIncorrectAdditionalAppDataForWriting("applicationCommands");
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage,
- SaveAllData_IncorrectSubscriptionsData) {
- TestIncorrectAdditionalAppDataForWriting("subscribtions");
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, SaveAllData_IncorrectChoiceSetData) {
- TestIncorrectAdditionalAppDataForWriting("applicationChoiceSets");
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, SaveAllData_Positive) {
- // Processing of Application_data needed real DB frow write
- InitRealDB();
- // Correct smart type
- smart_objects::SmartObject data;
- GetCorrectAppData(data);
-
- AddApplicationsToDB(data);
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, GetAllData_DBProblem) {
- InitRealDB();
- EXPECT_CALL(*mock_database_, conn()).WillOnce(ReturnNull());
-
- smart_objects::SmartObject data;
- resumption_data_db_.GetAllData(data);
-}
-
-TEST_F(ResumptionDBTest_WithMockStorage, GetAllData_Positive) {
- InitRealDB();
- smart_objects::SmartObject input_data;
- GetCorrectAppData(input_data);
- AddApplicationsToDB(input_data);
-
- smart_objects::SmartObject output_data;
- EXPECT_TRUE(resumption_data_db_.GetAllData(output_data));
-
- // Timestamp added with writing to DB
- output_data[0].erase("timeStamp");
-
- EXPECT_TRUE(input_data == output_data);
-}
-
TEST_F(ResumptionDataDBTest, Init) {
- ::utils::dbms::SQLQuery query_checks(test_db());
+ utils::dbms::SQLQuery query_checks(test_db());
EXPECT_TRUE(res_db()->Init());