1eace7efcSopenharmony_ci/* 2eace7efcSopenharmony_ci * Copyright (c) 2021 Huawei Device Co., Ltd. 3eace7efcSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 4eace7efcSopenharmony_ci * you may not use this file except in compliance with the License. 5eace7efcSopenharmony_ci * You may obtain a copy of the License at 6eace7efcSopenharmony_ci * 7eace7efcSopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 8eace7efcSopenharmony_ci * 9eace7efcSopenharmony_ci * Unless required by applicable law or agreed to in writing, software 10eace7efcSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 11eace7efcSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12eace7efcSopenharmony_ci * See the License for the specific language governing permissions and 13eace7efcSopenharmony_ci * limitations under the License. 14eace7efcSopenharmony_ci */ 15eace7efcSopenharmony_ci 16eace7efcSopenharmony_ci#include <gtest/gtest.h> 17eace7efcSopenharmony_ci#define private public 18eace7efcSopenharmony_ci#define protected public 19eace7efcSopenharmony_ci#include "ability_info.h" 20eace7efcSopenharmony_ci#include "mission.h" 21eace7efcSopenharmony_ci#include "mission_list.h" 22eace7efcSopenharmony_ci#include "want.h" 23eace7efcSopenharmony_ci#include "application_info.h" 24eace7efcSopenharmony_ci#undef private 25eace7efcSopenharmony_ci#undef protected 26eace7efcSopenharmony_ci 27eace7efcSopenharmony_ciusing namespace testing::ext; 28eace7efcSopenharmony_ciusing namespace OHOS::AppExecFwk; 29eace7efcSopenharmony_ci 30eace7efcSopenharmony_cinamespace OHOS { 31eace7efcSopenharmony_cinamespace AAFwk { 32eace7efcSopenharmony_ciclass MissionTest : public testing::Test { 33eace7efcSopenharmony_cipublic: 34eace7efcSopenharmony_ci static void SetUpTestCase(void); 35eace7efcSopenharmony_ci static void TearDownTestCase(void); 36eace7efcSopenharmony_ci void SetUp(); 37eace7efcSopenharmony_ci void TearDown(); 38eace7efcSopenharmony_ci 39eace7efcSopenharmony_ci static AbilityRequest GenerateAbilityRequest(const std::string& deviceName, const std::string& abilityName, 40eace7efcSopenharmony_ci const std::string& appName, const std::string& bundleName); 41eace7efcSopenharmony_ci 42eace7efcSopenharmony_ci Want want_{}; 43eace7efcSopenharmony_ci AbilityInfo abilityInfo_{}; 44eace7efcSopenharmony_ci ApplicationInfo appInfo_{}; 45eace7efcSopenharmony_ci}; 46eace7efcSopenharmony_ci 47eace7efcSopenharmony_civoid MissionTest::SetUpTestCase(void) 48eace7efcSopenharmony_ci{} 49eace7efcSopenharmony_civoid MissionTest::TearDownTestCase(void) 50eace7efcSopenharmony_ci{} 51eace7efcSopenharmony_civoid MissionTest::SetUp(void) 52eace7efcSopenharmony_ci{} 53eace7efcSopenharmony_civoid MissionTest::TearDown(void) 54eace7efcSopenharmony_ci{} 55eace7efcSopenharmony_ci 56eace7efcSopenharmony_ciAbilityRequest MissionTest::GenerateAbilityRequest(const std::string& deviceName, const std::string& abilityName, 57eace7efcSopenharmony_ci const std::string& appName, const std::string& bundleName) 58eace7efcSopenharmony_ci{ 59eace7efcSopenharmony_ci ElementName element(deviceName, abilityName, bundleName); 60eace7efcSopenharmony_ci Want want; 61eace7efcSopenharmony_ci want.SetElement(element); 62eace7efcSopenharmony_ci 63eace7efcSopenharmony_ci AbilityInfo abilityInfo; 64eace7efcSopenharmony_ci abilityInfo.visible = true; 65eace7efcSopenharmony_ci abilityInfo.applicationName = appName; 66eace7efcSopenharmony_ci ApplicationInfo appinfo; 67eace7efcSopenharmony_ci appinfo.name = appName; 68eace7efcSopenharmony_ci 69eace7efcSopenharmony_ci AbilityRequest abilityRequest; 70eace7efcSopenharmony_ci abilityRequest.want = want; 71eace7efcSopenharmony_ci abilityRequest.abilityInfo = abilityInfo; 72eace7efcSopenharmony_ci abilityRequest.appInfo = appinfo; 73eace7efcSopenharmony_ci 74eace7efcSopenharmony_ci return abilityRequest; 75eace7efcSopenharmony_ci} 76eace7efcSopenharmony_ci 77eace7efcSopenharmony_ci/* 78eace7efcSopenharmony_ci * Feature: Mission 79eace7efcSopenharmony_ci * Function: SetMissionList and GetMissionList 80eace7efcSopenharmony_ci * SubFunction: NA 81eace7efcSopenharmony_ci * FunctionPoints: Mission SetMissionList 82eace7efcSopenharmony_ci * EnvConditions: NA 83eace7efcSopenharmony_ci * CaseDescription: Verify SetMissionList 84eace7efcSopenharmony_ci */ 85eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_set_mission_list_001, TestSize.Level1) 86eace7efcSopenharmony_ci{ 87eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(1, nullptr); 88eace7efcSopenharmony_ci EXPECT_EQ(nullptr, mission->GetMissionList()); 89eace7efcSopenharmony_ci} 90eace7efcSopenharmony_ci 91eace7efcSopenharmony_ci/* 92eace7efcSopenharmony_ci * Feature: Mission 93eace7efcSopenharmony_ci * Function: SetMissionList and GetMissionList 94eace7efcSopenharmony_ci * SubFunction: NA 95eace7efcSopenharmony_ci * FunctionPoints: Mission SetMissionList 96eace7efcSopenharmony_ci * EnvConditions: NA 97eace7efcSopenharmony_ci * CaseDescription: Verify SetMissionList 98eace7efcSopenharmony_ci */ 99eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_set_mission_list_002, TestSize.Level1) 100eace7efcSopenharmony_ci{ 101eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(1, nullptr); 102eace7efcSopenharmony_ci mission->SetMissionList(nullptr); 103eace7efcSopenharmony_ci EXPECT_EQ(nullptr, mission->GetMissionList()); 104eace7efcSopenharmony_ci} 105eace7efcSopenharmony_ci 106eace7efcSopenharmony_ci/* 107eace7efcSopenharmony_ci * Feature: Mission 108eace7efcSopenharmony_ci * Function: SetMissionList and GetMissionList 109eace7efcSopenharmony_ci * SubFunction: NA 110eace7efcSopenharmony_ci * FunctionPoints: Mission SetMissionList 111eace7efcSopenharmony_ci * EnvConditions: NA 112eace7efcSopenharmony_ci * CaseDescription: Verify SetMissionList 113eace7efcSopenharmony_ci */ 114eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_set_mission_list_003, TestSize.Level1) 115eace7efcSopenharmony_ci{ 116eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(1, nullptr); 117eace7efcSopenharmony_ci auto missionList = std::make_shared<MissionList>(); 118eace7efcSopenharmony_ci mission->SetMissionList(missionList); 119eace7efcSopenharmony_ci EXPECT_EQ(missionList, mission->GetMissionList()); 120eace7efcSopenharmony_ci} 121eace7efcSopenharmony_ci 122eace7efcSopenharmony_ci/* 123eace7efcSopenharmony_ci * Feature: Mission 124eace7efcSopenharmony_ci * Function: SetMissionList and GetMissionList 125eace7efcSopenharmony_ci * SubFunction: NA 126eace7efcSopenharmony_ci * FunctionPoints: Mission SetMissionList 127eace7efcSopenharmony_ci * EnvConditions: NA 128eace7efcSopenharmony_ci * CaseDescription: Verify SetMissionList 129eace7efcSopenharmony_ci */ 130eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_set_mission_list_004, TestSize.Level1) 131eace7efcSopenharmony_ci{ 132eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(1, nullptr); 133eace7efcSopenharmony_ci auto missionList = std::make_shared<MissionList>(); 134eace7efcSopenharmony_ci mission->SetMissionList(missionList); 135eace7efcSopenharmony_ci auto missionList1 = std::make_shared<MissionList>(); 136eace7efcSopenharmony_ci mission->SetMissionList(missionList1); 137eace7efcSopenharmony_ci EXPECT_EQ(missionList1, mission->GetMissionList()); 138eace7efcSopenharmony_ci} 139eace7efcSopenharmony_ci 140eace7efcSopenharmony_ci/* 141eace7efcSopenharmony_ci * Feature: Mission 142eace7efcSopenharmony_ci * Function: IsSingletonAbility 143eace7efcSopenharmony_ci * SubFunction: NA 144eace7efcSopenharmony_ci * FunctionPoints: Mission IsSingletonAbility 145eace7efcSopenharmony_ci * EnvConditions: NA 146eace7efcSopenharmony_ci * CaseDescription: Verify IsSingletonAbility 147eace7efcSopenharmony_ci */ 148eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_is_singleton_001, TestSize.Level1) 149eace7efcSopenharmony_ci{ 150eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(1, nullptr); 151eace7efcSopenharmony_ci EXPECT_FALSE(mission->IsSingletonAbility()); 152eace7efcSopenharmony_ci} 153eace7efcSopenharmony_ci 154eace7efcSopenharmony_ci/* 155eace7efcSopenharmony_ci * Feature: Mission 156eace7efcSopenharmony_ci * Function: IsSingletonAbility 157eace7efcSopenharmony_ci * SubFunction: NA 158eace7efcSopenharmony_ci * FunctionPoints: Mission IsSingletonAbility 159eace7efcSopenharmony_ci * EnvConditions: NA 160eace7efcSopenharmony_ci * CaseDescription: Verify IsSingletonAbility 161eace7efcSopenharmony_ci */ 162eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_is_singleton_002, TestSize.Level1) 163eace7efcSopenharmony_ci{ 164eace7efcSopenharmony_ci AppExecFwk::AbilityInfo abilityInfo; 165eace7efcSopenharmony_ci abilityInfo.launchMode = AppExecFwk::LaunchMode::STANDARD; 166eace7efcSopenharmony_ci Want want; 167eace7efcSopenharmony_ci AppExecFwk::ApplicationInfo applicationInfo; 168eace7efcSopenharmony_ci std::shared_ptr<AbilityRecord> abilityRecord = std::make_shared<AbilityRecord>(want, abilityInfo, applicationInfo); 169eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(0, abilityRecord); 170eace7efcSopenharmony_ci EXPECT_FALSE(mission->IsSingletonAbility()); 171eace7efcSopenharmony_ci} 172eace7efcSopenharmony_ci 173eace7efcSopenharmony_ci/* 174eace7efcSopenharmony_ci * Feature: Mission 175eace7efcSopenharmony_ci * Function: IsSingletonAbility 176eace7efcSopenharmony_ci * SubFunction: NA 177eace7efcSopenharmony_ci * FunctionPoints: Mission IsSingletonAbility 178eace7efcSopenharmony_ci * EnvConditions: NA 179eace7efcSopenharmony_ci * CaseDescription: Verify IsSingletonAbility 180eace7efcSopenharmony_ci */ 181eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_is_singleton_003, TestSize.Level1) 182eace7efcSopenharmony_ci{ 183eace7efcSopenharmony_ci AppExecFwk::AbilityInfo abilityInfo; 184eace7efcSopenharmony_ci abilityInfo.launchMode = AppExecFwk::LaunchMode::SINGLETON; 185eace7efcSopenharmony_ci Want want; 186eace7efcSopenharmony_ci AppExecFwk::ApplicationInfo applicationInfo; 187eace7efcSopenharmony_ci std::shared_ptr<AbilityRecord> abilityRecord = std::make_shared<AbilityRecord>(want, abilityInfo, applicationInfo); 188eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(0, abilityRecord); 189eace7efcSopenharmony_ci EXPECT_TRUE(mission->IsSingletonAbility()); 190eace7efcSopenharmony_ci} 191eace7efcSopenharmony_ci 192eace7efcSopenharmony_ci/* 193eace7efcSopenharmony_ci * Feature: Mission 194eace7efcSopenharmony_ci * Function: GetMissionName 195eace7efcSopenharmony_ci * SubFunction: NA 196eace7efcSopenharmony_ci * FunctionPoints: Mission GetMissionName 197eace7efcSopenharmony_ci * EnvConditions: NA 198eace7efcSopenharmony_ci * CaseDescription: Verify GetMissionName 199eace7efcSopenharmony_ci */ 200eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_get_mission_name_001, TestSize.Level1) 201eace7efcSopenharmony_ci{ 202eace7efcSopenharmony_ci AppExecFwk::AbilityInfo abilityInfo; 203eace7efcSopenharmony_ci abilityInfo.launchMode = AppExecFwk::LaunchMode::SINGLETON; 204eace7efcSopenharmony_ci Want want; 205eace7efcSopenharmony_ci AppExecFwk::ApplicationInfo applicationInfo; 206eace7efcSopenharmony_ci std::shared_ptr<AbilityRecord> abilityRecord = std::make_shared<AbilityRecord>(want, abilityInfo, applicationInfo); 207eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(0, abilityRecord); 208eace7efcSopenharmony_ci EXPECT_TRUE("" == mission->GetMissionName()); 209eace7efcSopenharmony_ci} 210eace7efcSopenharmony_ci 211eace7efcSopenharmony_ci/* 212eace7efcSopenharmony_ci * Feature: Mission 213eace7efcSopenharmony_ci * Function: GetMissionName 214eace7efcSopenharmony_ci * SubFunction: NA 215eace7efcSopenharmony_ci * FunctionPoints: Mission GetMissionName 216eace7efcSopenharmony_ci * EnvConditions: NA 217eace7efcSopenharmony_ci * CaseDescription: Verify GetMissionName 218eace7efcSopenharmony_ci */ 219eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_get_mission_name_002, TestSize.Level1) 220eace7efcSopenharmony_ci{ 221eace7efcSopenharmony_ci AppExecFwk::AbilityInfo abilityInfo; 222eace7efcSopenharmony_ci abilityInfo.launchMode = AppExecFwk::LaunchMode::SINGLETON; 223eace7efcSopenharmony_ci Want want; 224eace7efcSopenharmony_ci AppExecFwk::ApplicationInfo applicationInfo; 225eace7efcSopenharmony_ci std::shared_ptr<AbilityRecord> abilityRecord = std::make_shared<AbilityRecord>(want, abilityInfo, applicationInfo); 226eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(0, abilityRecord, ""); 227eace7efcSopenharmony_ci EXPECT_TRUE("" == mission->GetMissionName()); 228eace7efcSopenharmony_ci} 229eace7efcSopenharmony_ci 230eace7efcSopenharmony_ci/* 231eace7efcSopenharmony_ci * Feature: Mission 232eace7efcSopenharmony_ci * Function: GetMissionName 233eace7efcSopenharmony_ci * SubFunction: NA 234eace7efcSopenharmony_ci * FunctionPoints: Mission GetMissionName 235eace7efcSopenharmony_ci * EnvConditions: NA 236eace7efcSopenharmony_ci * CaseDescription: Verify GetMissionName 237eace7efcSopenharmony_ci */ 238eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_get_mission_name_003, TestSize.Level1) 239eace7efcSopenharmony_ci{ 240eace7efcSopenharmony_ci AppExecFwk::AbilityInfo abilityInfo; 241eace7efcSopenharmony_ci abilityInfo.launchMode = AppExecFwk::LaunchMode::SINGLETON; 242eace7efcSopenharmony_ci Want want; 243eace7efcSopenharmony_ci AppExecFwk::ApplicationInfo applicationInfo; 244eace7efcSopenharmony_ci std::shared_ptr<AbilityRecord> abilityRecord = std::make_shared<AbilityRecord>(want, abilityInfo, applicationInfo); 245eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(0, abilityRecord, "name1"); 246eace7efcSopenharmony_ci EXPECT_TRUE("name1" == mission->GetMissionName()); 247eace7efcSopenharmony_ci} 248eace7efcSopenharmony_ci 249eace7efcSopenharmony_ci/* 250eace7efcSopenharmony_ci * Feature: Mission 251eace7efcSopenharmony_ci * Function: SetLockedState/IsLockedState 252eace7efcSopenharmony_ci * SubFunction: NA 253eace7efcSopenharmony_ci * FunctionPoints: Mission SetLockedState 254eace7efcSopenharmony_ci * EnvConditions: NA 255eace7efcSopenharmony_ci * CaseDescription: Verify SetLockedState/IsLockedState 256eace7efcSopenharmony_ci */ 257eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_locked_state_001, TestSize.Level1) 258eace7efcSopenharmony_ci{ 259eace7efcSopenharmony_ci AppExecFwk::AbilityInfo abilityInfo; 260eace7efcSopenharmony_ci abilityInfo.launchMode = AppExecFwk::LaunchMode::SINGLETON; 261eace7efcSopenharmony_ci Want want; 262eace7efcSopenharmony_ci AppExecFwk::ApplicationInfo applicationInfo; 263eace7efcSopenharmony_ci std::shared_ptr<AbilityRecord> abilityRecord = std::make_shared<AbilityRecord>(want, abilityInfo, applicationInfo); 264eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(0, abilityRecord, "name1"); 265eace7efcSopenharmony_ci EXPECT_FALSE(mission->IsLockedState()); 266eace7efcSopenharmony_ci} 267eace7efcSopenharmony_ci 268eace7efcSopenharmony_ci/* 269eace7efcSopenharmony_ci * Feature: Mission 270eace7efcSopenharmony_ci * Function: SetLockedState/IsLockedState 271eace7efcSopenharmony_ci * SubFunction: NA 272eace7efcSopenharmony_ci * FunctionPoints: Mission SetLockedState 273eace7efcSopenharmony_ci * EnvConditions: NA 274eace7efcSopenharmony_ci * CaseDescription: Verify SetLockedState/IsLockedState 275eace7efcSopenharmony_ci */ 276eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_locked_state_002, TestSize.Level1) 277eace7efcSopenharmony_ci{ 278eace7efcSopenharmony_ci AppExecFwk::AbilityInfo abilityInfo; 279eace7efcSopenharmony_ci abilityInfo.launchMode = AppExecFwk::LaunchMode::SINGLETON; 280eace7efcSopenharmony_ci Want want; 281eace7efcSopenharmony_ci AppExecFwk::ApplicationInfo applicationInfo; 282eace7efcSopenharmony_ci std::shared_ptr<AbilityRecord> abilityRecord = std::make_shared<AbilityRecord>(want, abilityInfo, applicationInfo); 283eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(0, abilityRecord, "name1"); 284eace7efcSopenharmony_ci mission->SetLockedState(true); 285eace7efcSopenharmony_ci EXPECT_TRUE(mission->IsLockedState()); 286eace7efcSopenharmony_ci} 287eace7efcSopenharmony_ci 288eace7efcSopenharmony_ci/* 289eace7efcSopenharmony_ci * Feature: Mission 290eace7efcSopenharmony_ci * Function: SetLockedState/IsLockedState 291eace7efcSopenharmony_ci * SubFunction: NA 292eace7efcSopenharmony_ci * FunctionPoints: Mission SetLockedState 293eace7efcSopenharmony_ci * EnvConditions: NA 294eace7efcSopenharmony_ci * CaseDescription: Verify SetLockedState/IsLockedState 295eace7efcSopenharmony_ci */ 296eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_locked_state_003, TestSize.Level1) 297eace7efcSopenharmony_ci{ 298eace7efcSopenharmony_ci AppExecFwk::AbilityInfo abilityInfo; 299eace7efcSopenharmony_ci abilityInfo.launchMode = AppExecFwk::LaunchMode::SINGLETON; 300eace7efcSopenharmony_ci Want want; 301eace7efcSopenharmony_ci AppExecFwk::ApplicationInfo applicationInfo; 302eace7efcSopenharmony_ci std::shared_ptr<AbilityRecord> abilityRecord = std::make_shared<AbilityRecord>(want, abilityInfo, applicationInfo); 303eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(0, abilityRecord, "name1"); 304eace7efcSopenharmony_ci mission->SetLockedState(true); 305eace7efcSopenharmony_ci EXPECT_TRUE(mission->IsLockedState()); 306eace7efcSopenharmony_ci mission->SetLockedState(false); 307eace7efcSopenharmony_ci EXPECT_FALSE(mission->IsLockedState()); 308eace7efcSopenharmony_ci} 309eace7efcSopenharmony_ci 310eace7efcSopenharmony_ci/* 311eace7efcSopenharmony_ci * Feature: Mission 312eace7efcSopenharmony_ci * Function: copy constructor 313eace7efcSopenharmony_ci * SubFunction: NA 314eace7efcSopenharmony_ci * FunctionPoints: Mission copy constructor 315eace7efcSopenharmony_ci * EnvConditions: NA 316eace7efcSopenharmony_ci * CaseDescription: deep copy a object, with same content but different pointer address 317eace7efcSopenharmony_ci */ 318eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_copy_constructor_001, TestSize.Level1) 319eace7efcSopenharmony_ci{ 320eace7efcSopenharmony_ci AppExecFwk::AbilityInfo abilityInfo; 321eace7efcSopenharmony_ci abilityInfo.launchMode = AppExecFwk::LaunchMode::SINGLETON; 322eace7efcSopenharmony_ci Want want; 323eace7efcSopenharmony_ci AppExecFwk::ApplicationInfo applicationInfo; 324eace7efcSopenharmony_ci std::shared_ptr<AbilityRecord> abilityRecord = std::make_shared<AbilityRecord>(want, abilityInfo, applicationInfo); 325eace7efcSopenharmony_ci auto mission1 = std::make_shared<Mission>(0, abilityRecord, "name1"); 326eace7efcSopenharmony_ci auto mission2 = std::make_shared<Mission>(mission1); 327eace7efcSopenharmony_ci EXPECT_NE(mission1, mission2); 328eace7efcSopenharmony_ci EXPECT_NE(&(mission1->missionId_), &(mission2->missionId_)); 329eace7efcSopenharmony_ci EXPECT_NE(&(mission1->startMethod_), &(mission2->startMethod_)); 330eace7efcSopenharmony_ci EXPECT_NE(&(mission1->abilityRecord_), &(mission2->abilityRecord_)); 331eace7efcSopenharmony_ci EXPECT_NE(&(mission1->missionName_), &(mission2->missionName_)); 332eace7efcSopenharmony_ci EXPECT_EQ(mission1->missionId_, mission2->missionId_); 333eace7efcSopenharmony_ci EXPECT_EQ(mission1->startMethod_, mission2->startMethod_); 334eace7efcSopenharmony_ci EXPECT_EQ(mission1->abilityRecord_, mission2->abilityRecord_); 335eace7efcSopenharmony_ci EXPECT_EQ(mission1->missionName_, mission2->missionName_); 336eace7efcSopenharmony_ci} 337eace7efcSopenharmony_ci 338eace7efcSopenharmony_ci/* 339eace7efcSopenharmony_ci * Feature: Mission 340eace7efcSopenharmony_ci * Function: IsSpecifiedAbility 341eace7efcSopenharmony_ci * SubFunction: NA 342eace7efcSopenharmony_ci * FunctionPoints: Mission IsSpecifiedAbility 343eace7efcSopenharmony_ci * EnvConditions: NA 344eace7efcSopenharmony_ci * CaseDescription: Verify IsSpecifiedAbility 345eace7efcSopenharmony_ci */ 346eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_is_specified_001, TestSize.Level1) 347eace7efcSopenharmony_ci{ 348eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(1, nullptr); 349eace7efcSopenharmony_ci EXPECT_FALSE(mission->IsSpecifiedAbility()); 350eace7efcSopenharmony_ci} 351eace7efcSopenharmony_ci 352eace7efcSopenharmony_ci/* 353eace7efcSopenharmony_ci * Feature: Mission 354eace7efcSopenharmony_ci * Function: IsSpecifiedAbility 355eace7efcSopenharmony_ci * SubFunction: NA 356eace7efcSopenharmony_ci * FunctionPoints: Mission IsSpecifiedAbility 357eace7efcSopenharmony_ci * EnvConditions: NA 358eace7efcSopenharmony_ci * CaseDescription: Verify IsSpecifiedAbility 359eace7efcSopenharmony_ci */ 360eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_is_specified_002, TestSize.Level1) 361eace7efcSopenharmony_ci{ 362eace7efcSopenharmony_ci AppExecFwk::AbilityInfo abilityInfo; 363eace7efcSopenharmony_ci abilityInfo.launchMode = AppExecFwk::LaunchMode::STANDARD; 364eace7efcSopenharmony_ci Want want; 365eace7efcSopenharmony_ci AppExecFwk::ApplicationInfo applicationInfo; 366eace7efcSopenharmony_ci std::shared_ptr<AbilityRecord> abilityRecord = std::make_shared<AbilityRecord>(want, abilityInfo, applicationInfo); 367eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(0, abilityRecord); 368eace7efcSopenharmony_ci EXPECT_FALSE(mission->IsSpecifiedAbility()); 369eace7efcSopenharmony_ci} 370eace7efcSopenharmony_ci 371eace7efcSopenharmony_ci/* 372eace7efcSopenharmony_ci * Feature: Mission 373eace7efcSopenharmony_ci * Function: IsSpecifiedAbility 374eace7efcSopenharmony_ci * SubFunction: NA 375eace7efcSopenharmony_ci * FunctionPoints: Mission IsSpecifiedAbility 376eace7efcSopenharmony_ci * EnvConditions: NA 377eace7efcSopenharmony_ci * CaseDescription: Verify IsSpecifiedAbility 378eace7efcSopenharmony_ci */ 379eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_is_specified_003, TestSize.Level1) 380eace7efcSopenharmony_ci{ 381eace7efcSopenharmony_ci AppExecFwk::AbilityInfo abilityInfo; 382eace7efcSopenharmony_ci abilityInfo.launchMode = AppExecFwk::LaunchMode::SPECIFIED; 383eace7efcSopenharmony_ci Want want; 384eace7efcSopenharmony_ci AppExecFwk::ApplicationInfo applicationInfo; 385eace7efcSopenharmony_ci std::shared_ptr<AbilityRecord> abilityRecord = std::make_shared<AbilityRecord>(want, abilityInfo, applicationInfo); 386eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(0, abilityRecord); 387eace7efcSopenharmony_ci EXPECT_TRUE(mission->IsSpecifiedAbility()); 388eace7efcSopenharmony_ci} 389eace7efcSopenharmony_ci 390eace7efcSopenharmony_ci/* 391eace7efcSopenharmony_ci * Feature: Mission 392eace7efcSopenharmony_ci * Function: SetSpecifiedFlag and GetSpecifiedFlag 393eace7efcSopenharmony_ci * SubFunction: NA 394eace7efcSopenharmony_ci * FunctionPoints: Mission SetSpecifiedFlag 395eace7efcSopenharmony_ci * EnvConditions: NA 396eace7efcSopenharmony_ci * CaseDescription: Verify SetSpecifiedFlag 397eace7efcSopenharmony_ci */ 398eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_set_specified_flag_001, TestSize.Level1) 399eace7efcSopenharmony_ci{ 400eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(1, nullptr); 401eace7efcSopenharmony_ci EXPECT_EQ("", mission->GetSpecifiedFlag()); 402eace7efcSopenharmony_ci} 403eace7efcSopenharmony_ci 404eace7efcSopenharmony_ci/* 405eace7efcSopenharmony_ci * Feature: Mission 406eace7efcSopenharmony_ci * Function: SetSpecifiedFlag and GetSpecifiedFlag 407eace7efcSopenharmony_ci * SubFunction: NA 408eace7efcSopenharmony_ci * FunctionPoints: Mission SetSpecifiedFlag 409eace7efcSopenharmony_ci * EnvConditions: NA 410eace7efcSopenharmony_ci * CaseDescription: Verify SetSpecifiedFlag 411eace7efcSopenharmony_ci */ 412eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_set_specified_flag_002, TestSize.Level1) 413eace7efcSopenharmony_ci{ 414eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(1, nullptr); 415eace7efcSopenharmony_ci mission->SetSpecifiedFlag(""); 416eace7efcSopenharmony_ci EXPECT_EQ("", mission->GetSpecifiedFlag()); 417eace7efcSopenharmony_ci} 418eace7efcSopenharmony_ci 419eace7efcSopenharmony_ci/* 420eace7efcSopenharmony_ci * Feature: Mission 421eace7efcSopenharmony_ci * Function: SetSpecifiedFlag and GetSpecifiedFlag 422eace7efcSopenharmony_ci * SubFunction: NA 423eace7efcSopenharmony_ci * FunctionPoints: Mission SetSpecifiedFlag 424eace7efcSopenharmony_ci * EnvConditions: NA 425eace7efcSopenharmony_ci * CaseDescription: Verify SetSpecifiedFlag 426eace7efcSopenharmony_ci */ 427eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_set_specified_flag_003, TestSize.Level1) 428eace7efcSopenharmony_ci{ 429eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(1, nullptr); 430eace7efcSopenharmony_ci mission->SetSpecifiedFlag("test_string"); 431eace7efcSopenharmony_ci EXPECT_EQ("test_string", mission->GetSpecifiedFlag()); 432eace7efcSopenharmony_ci} 433eace7efcSopenharmony_ci 434eace7efcSopenharmony_ci/* 435eace7efcSopenharmony_ci * Feature: Mission 436eace7efcSopenharmony_ci * Function: SetSpecifiedFlag and GetSpecifiedFlag 437eace7efcSopenharmony_ci * SubFunction: NA 438eace7efcSopenharmony_ci * FunctionPoints: Mission SetSpecifiedFlag 439eace7efcSopenharmony_ci * EnvConditions: NA 440eace7efcSopenharmony_ci * CaseDescription: Verify SetSpecifiedFlag 441eace7efcSopenharmony_ci */ 442eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_set_specified_flag_004, TestSize.Level1) 443eace7efcSopenharmony_ci{ 444eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(1, nullptr); 445eace7efcSopenharmony_ci mission->SetSpecifiedFlag("test_string"); 446eace7efcSopenharmony_ci mission->SetSpecifiedFlag("test_string2"); 447eace7efcSopenharmony_ci EXPECT_EQ("test_string2", mission->GetSpecifiedFlag()); 448eace7efcSopenharmony_ci} 449eace7efcSopenharmony_ci 450eace7efcSopenharmony_ci/* 451eace7efcSopenharmony_ci * Feature: Mission 452eace7efcSopenharmony_ci * Function: SetMovingState and IsMovingState 453eace7efcSopenharmony_ci * SubFunction: NA 454eace7efcSopenharmony_ci * FunctionPoints: Mission SetMovingState 455eace7efcSopenharmony_ci * EnvConditions: NA 456eace7efcSopenharmony_ci * CaseDescription: Verify SetMovingState 457eace7efcSopenharmony_ci */ 458eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_set_moving_state_001, TestSize.Level1) 459eace7efcSopenharmony_ci{ 460eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(1, nullptr); 461eace7efcSopenharmony_ci EXPECT_EQ(false, mission->IsMovingState()); 462eace7efcSopenharmony_ci} 463eace7efcSopenharmony_ci 464eace7efcSopenharmony_ci 465eace7efcSopenharmony_ci/* 466eace7efcSopenharmony_ci * Feature: Mission 467eace7efcSopenharmony_ci * Function: SetMovingState and IsMovingState 468eace7efcSopenharmony_ci * SubFunction: NA 469eace7efcSopenharmony_ci * FunctionPoints: Mission SetMovingState 470eace7efcSopenharmony_ci * EnvConditions: NA 471eace7efcSopenharmony_ci * CaseDescription: Verify SetMovingState 472eace7efcSopenharmony_ci */ 473eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_set_moving_state_002, TestSize.Level1) 474eace7efcSopenharmony_ci{ 475eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(1, nullptr); 476eace7efcSopenharmony_ci mission->SetMovingState(true); 477eace7efcSopenharmony_ci EXPECT_EQ(true, mission->IsMovingState()); 478eace7efcSopenharmony_ci} 479eace7efcSopenharmony_ci 480eace7efcSopenharmony_ci/* 481eace7efcSopenharmony_ci * Feature: Mission 482eace7efcSopenharmony_ci * Function: SetANRState and IsANRState 483eace7efcSopenharmony_ci * SubFunction: NA 484eace7efcSopenharmony_ci * FunctionPoints: Mission SetANRState 485eace7efcSopenharmony_ci * EnvConditions: NA 486eace7efcSopenharmony_ci * CaseDescription: Verify SetANRState 487eace7efcSopenharmony_ci */ 488eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_set_anr_state_001, TestSize.Level1) 489eace7efcSopenharmony_ci{ 490eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(1, nullptr); 491eace7efcSopenharmony_ci EXPECT_EQ(false, mission->IsANRState()); 492eace7efcSopenharmony_ci} 493eace7efcSopenharmony_ci 494eace7efcSopenharmony_ci 495eace7efcSopenharmony_ci/* 496eace7efcSopenharmony_ci * Feature: Mission 497eace7efcSopenharmony_ci * Function: SetANRState and IsANRState 498eace7efcSopenharmony_ci * SubFunction: NA 499eace7efcSopenharmony_ci * FunctionPoints: Mission SetANRState 500eace7efcSopenharmony_ci * EnvConditions: NA 501eace7efcSopenharmony_ci * CaseDescription: Verify SetANRState 502eace7efcSopenharmony_ci */ 503eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_set_anr_state_002, TestSize.Level1) 504eace7efcSopenharmony_ci{ 505eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(1, nullptr); 506eace7efcSopenharmony_ci mission->SetANRState(true); 507eace7efcSopenharmony_ci EXPECT_EQ(true, mission->IsANRState()); 508eace7efcSopenharmony_ci} 509eace7efcSopenharmony_ci 510eace7efcSopenharmony_ci/* 511eace7efcSopenharmony_ci * Feature: Mission 512eace7efcSopenharmony_ci * Function: Dump 513eace7efcSopenharmony_ci * SubFunction: NA 514eace7efcSopenharmony_ci * FunctionPoints: Mission Dump 515eace7efcSopenharmony_ci * EnvConditions: NA 516eace7efcSopenharmony_ci * CaseDescription: Test Dump 517eace7efcSopenharmony_ci */ 518eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_dump, TestSize.Level1) 519eace7efcSopenharmony_ci{ 520eace7efcSopenharmony_ci AppExecFwk::AbilityInfo abilityInfo; 521eace7efcSopenharmony_ci abilityInfo.launchMode = AppExecFwk::LaunchMode::SINGLETON; 522eace7efcSopenharmony_ci Want want; 523eace7efcSopenharmony_ci AppExecFwk::ApplicationInfo applicationInfo; 524eace7efcSopenharmony_ci std::shared_ptr<AbilityRecord> abilityRecord = std::make_shared<AbilityRecord>(want, abilityInfo, applicationInfo); 525eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(0, abilityRecord, "name1"); 526eace7efcSopenharmony_ci std::vector<std::string> info; 527eace7efcSopenharmony_ci mission->Dump(info); 528eace7efcSopenharmony_ci} 529eace7efcSopenharmony_ci 530eace7efcSopenharmony_ci/* 531eace7efcSopenharmony_ci * Feature: Mission 532eace7efcSopenharmony_ci * Function: UpdateMissionId 533eace7efcSopenharmony_ci * SubFunction: NA 534eace7efcSopenharmony_ci * FunctionPoints: Mission UpdateMissionId 535eace7efcSopenharmony_ci * EnvConditions: NA 536eace7efcSopenharmony_ci * CaseDescription: Verify UpdateMissionId 537eace7efcSopenharmony_ci */ 538eace7efcSopenharmony_ciHWTEST_F(MissionTest, mission_update_mission_id, TestSize.Level1) 539eace7efcSopenharmony_ci{ 540eace7efcSopenharmony_ci auto mission = std::make_shared<Mission>(1, nullptr, "name1", 0); 541eace7efcSopenharmony_ci EXPECT_EQ(1, mission->GetMissionId()); 542eace7efcSopenharmony_ci EXPECT_EQ(false, mission->UpdateMissionId(2, 0)); 543eace7efcSopenharmony_ci EXPECT_EQ(1, mission->GetMissionId()); 544eace7efcSopenharmony_ci EXPECT_EQ(true, mission->UpdateMissionId(2, 1)); 545eace7efcSopenharmony_ci EXPECT_EQ(2, mission->GetMissionId()); 546eace7efcSopenharmony_ci} 547eace7efcSopenharmony_ci} // namespace AAFwk 548eace7efcSopenharmony_ci} // namespace OHOS