diff options
author | YarikMamykin (GitHub) <ymamykin@luxoft.com> | 2020-03-23 16:15:05 +0200 |
---|---|---|
committer | YarikMamykin (GitHub) <ymamykin@luxoft.com> | 2020-03-23 16:15:05 +0200 |
commit | cbf3de6f9cd31745f97f768a0c2773dba45abec7 (patch) | |
tree | 1b5b26a12a69e9761a30c0400574f0cb104e3872 | |
parent | d58a0d84e88497bb4822f9a360edf9843ff73964 (diff) | |
download | sdl_core-fix/3285_SDL_crash_with_enable_policy_false.tar.gz |
fixup! Add unit tests for PushAppIdToPTUQueue methodfix/3285_SDL_crash_with_enable_policy_false
-rw-r--r-- | src/components/application_manager/test/policy_handler_test.cc | 113 |
1 files changed, 113 insertions, 0 deletions
diff --git a/src/components/application_manager/test/policy_handler_test.cc b/src/components/application_manager/test/policy_handler_test.cc index b55d188afd..8d68e23df5 100644 --- a/src/components/application_manager/test/policy_handler_test.cc +++ b/src/components/application_manager/test/policy_handler_test.cc @@ -3112,6 +3112,23 @@ TEST_F(PolicyHandlerTest, GetAppPropertiesStatus_HybridAppNotChanged_SUCCESS) { policy::PolicyHandlerInterface::AppPropertiesState::NO_CHANGES); } +TEST_F(PolicyHandlerTest, GetAppPropertiesStatus_PolicyDisabled_FAIL) { + ChangePolicyManagerToMock(); + + EXPECT_CALL(policy_settings_, enable_policy()).WillOnce(Return(false)); + policy_handler_.LoadPolicyLibrary(); + + smart_objects::SmartObject properties; + properties[strings::app_id] = kPolicyAppId_; + + EXPECT_CALL(*mock_policy_manager_, GetAppProperties(_, _)).Times(0); + EXPECT_CALL(*mock_policy_manager_, GetInitialAppData(_, _, _)).Times(0); + const auto expected_app_properties_state = + policy::PolicyHandlerInterface::AppPropertiesState::NO_CHANGES; + EXPECT_EQ(expected_app_properties_state, + policy_handler_.GetAppPropertiesStatus(properties, kPolicyAppId_)); +} + TEST_F(PolicyHandlerTest, GetEnabledLocalApps_SUCCESS) { ChangePolicyManagerToMock(); std::vector<std::string> enabled_local_apps; @@ -3218,6 +3235,102 @@ TEST_F(PolicyHandlerTest, GetRemovedVehicleDataItems_PolicyDisabled_FAIL) { EXPECT_TRUE(policy_handler_.GetRemovedVehicleDataItems().empty()); } +TEST_F(PolicyHandlerTest, PopAppIdFromPTUQueue_PolicyEnabled_SUCCESS) { + ChangePolicyManagerToMock(); + + policy_handler_.PushAppIdToPTUQueue(kAppId1_); + ASSERT_EQ(1u, policy_handler_.applications_ptu_queue_.size()); + + policy_handler_.PopAppIdFromPTUQueue(); + EXPECT_EQ(0u, policy_handler_.applications_ptu_queue_.size()); +} + +TEST_F(PolicyHandlerTest, PopAppIdFromPTUQueue_PolicyDisabled_FAIL) { + ChangePolicyManagerToMock(); + + const uint32_t expected_apps_count = 0u; + EXPECT_CALL(policy_settings_, enable_policy()).WillOnce(Return(false)); + EXPECT_CALL(*mock_policy_manager_, + UpdatePTUReadyAppsCount(expected_apps_count)) + .Times(0); + + policy_handler_.LoadPolicyLibrary(); + policy_handler_.PopAppIdFromPTUQueue(); + EXPECT_EQ(expected_apps_count, + policy_handler_.applications_ptu_queue_.size()); +} + +TEST_F(PolicyHandlerTest, OnLocalAppAdded_PolicyEnabled_SUCCESS) { + ChangePolicyManagerToMock(); + EXPECT_CALL(*mock_policy_manager_, OnLocalAppAdded()); + policy_handler_.OnLocalAppAdded(); +} + +TEST_F(PolicyHandlerTest, OnLocalAppAdded_PolicyDisabled_FAIL) { + ChangePolicyManagerToMock(); + + EXPECT_CALL(policy_settings_, enable_policy()).WillOnce(Return(false)); + EXPECT_CALL(*mock_policy_manager_, OnLocalAppAdded()).Times(0); + + policy_handler_.LoadPolicyLibrary(); + policy_handler_.OnLocalAppAdded(); +} + +TEST_F(PolicyHandlerTest, OnPermissionsUpdated_PolicyEnabled_SUCCESS) { + ChangePolicyManagerToMock(); + + EXPECT_CALL(app_manager_, application(kDeviceId_, kPolicyAppId_)) + .WillOnce(Return(mock_app_)); + + const rpc::Optional<rpc::Boolean> encryption_requiered; + EXPECT_CALL(*mock_policy_manager_, GetAppEncryptionRequired(kPolicyAppId_)) + .WillOnce(Return(encryption_requiered)); + EXPECT_CALL(*mock_app_, app_id()).WillRepeatedly(Return(kAppId1_)); + + Permissions app_permissions; + EXPECT_CALL(mock_message_helper_, + SendOnPermissionsChangeNotification(kAppId1_, _, _, _)); + policy_handler_.OnPermissionsUpdated( + kDeviceId_, kPolicyAppId_, app_permissions); +} + +TEST_F(PolicyHandlerTest, OnPermissionsUpdated_PolicyDisabled_FAIL) { + ChangePolicyManagerToMock(); + + EXPECT_CALL(policy_settings_, enable_policy()).WillOnce(Return(false)); + policy_handler_.LoadPolicyLibrary(); + + EXPECT_CALL(app_manager_, application(kDeviceId_, kPolicyAppId_)).Times(0); + EXPECT_CALL(*mock_policy_manager_, GetAppEncryptionRequired(kPolicyAppId_)) + .Times(0); + EXPECT_CALL(*mock_app_, app_id()).Times(0); + + Permissions app_permissions; + EXPECT_CALL(mock_message_helper_, + SendOnPermissionsChangeNotification(_, _, _, _)) + .Times(0); + policy_handler_.OnPermissionsUpdated( + kDeviceId_, kPolicyAppId_, app_permissions); +} + +TEST_F(PolicyHandlerTest, IsNewApplication_PolicyEnabled_SUCCESS) { + ChangePolicyManagerToMock(); + + EXPECT_CALL(*mock_policy_manager_, IsNewApplication(kPolicyAppId_)) + .WillOnce(Return(true)); + EXPECT_TRUE(policy_handler_.IsNewApplication(kPolicyAppId_)); +} + +TEST_F(PolicyHandlerTest, IsNewApplication_PolicyDisabled_FAIL) { + ChangePolicyManagerToMock(); + + EXPECT_CALL(policy_settings_, enable_policy()).WillOnce(Return(false)); + policy_handler_.LoadPolicyLibrary(); + + EXPECT_CALL(*mock_policy_manager_, IsNewApplication(kPolicyAppId_)).Times(0); + EXPECT_FALSE(policy_handler_.IsNewApplication(kPolicyAppId_)); +} + } // namespace policy_handler_test } // namespace components } // namespace test |