1 /*
2 * Copyright (c) 2022 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16 #include <gtest/gtest.h>
17 #include "ability_info.h"
18 #include "mission.h"
19 #include "mission_info.h"
20
21 using namespace testing::ext;
22 using namespace OHOS::AppExecFwk;
23
24 namespace OHOS {
25 namespace AAFwk {
26 class MissionInfoTest : public testing::Test {
27 public:
28 static void SetUpTestCase(void);
29 static void TearDownTestCase(void);
30 void SetUp();
31 void TearDown();
32 };
33
SetUpTestCase(void)34 void MissionInfoTest::SetUpTestCase(void)
35 {}
TearDownTestCase(void)36 void MissionInfoTest::TearDownTestCase(void)
37 {}
SetUp(void)38 void MissionInfoTest::SetUp(void)
39 {}
TearDown(void)40 void MissionInfoTest::TearDown(void)
41 {}
42
43 /*
44 * Feature: Mission Info
45 * Function: Marshalling and Unmarshalling
46 * SubFunction: NA
47 * FunctionPoints: Mission Marshalling
48 * EnvConditions: NA
49 * CaseDescription: Verify Marshalling
50 */
51 HWTEST_F(MissionInfoTest, mission_info_marshalling_001, TestSize.Level1)
52 {
53 Parcel parcel;
54 MissionInfo* parcelable1 = new MissionInfo();
55 parcelable1->id = 1;
56 parcelable1->runningState = 100;
57 parcelable1->lockedState = true;
58 parcelable1->continuable = true;
59 parcelable1->time = "time";
60 parcelable1->label = "label";
61 parcelable1->iconPath = "iconpath";
62 parcelable1->continueState = AAFwk::ContinueState::CONTINUESTATE_ACTIVE;
63 EXPECT_EQ(true, parcelable1->Marshalling(parcel));
64 MissionInfo* parcelable2 = parcelable1->Unmarshalling(parcel);
65 EXPECT_EQ(parcelable2->id, 1);
66 EXPECT_EQ(parcelable2->runningState, 100);
67 EXPECT_EQ(parcelable2->lockedState, true);
68 EXPECT_EQ(parcelable2->continuable, true);
69 EXPECT_EQ(parcelable2->time, "time");
70 EXPECT_EQ(parcelable2->label, "label");
71 EXPECT_EQ(parcelable2->iconPath, "iconpath");
72 EXPECT_EQ(parcelable2->continueState, AAFwk::ContinueState::CONTINUESTATE_ACTIVE);
73 }
74
75 /*
76 * Feature: Mission Info
77 * Function: ReadFromParcel
78 * SubFunction: NA
79 * FunctionPoints: Mission ReadFromParcel
80 */
81 HWTEST_F(MissionInfoTest, mission_info_dto_ReadFromParcel_0100, TestSize.Level1)
82 {
83 InnerMissionInfoDto info;
84 MessageParcel parcel;
85 EXPECT_FALSE(info.ReadFromParcel(parcel));
86 }
87
88 /*
89 * Feature: Mission Info
90 * Function: Marshalling
91 * SubFunction: NA
92 * FunctionPoints: Mission Marshalling
93 */
94 HWTEST_F(MissionInfoTest, mission_info_dto_Marshalling_0100, TestSize.Level1)
95 {
96 InnerMissionInfoDto info;
97 MessageParcel parcel;
98 EXPECT_TRUE(info.Marshalling(parcel));
99 }
100
101 /*
102 * Feature: Mission Info
103 * Function: Marshalling
104 * SubFunction: NA
105 * FunctionPoints: Mission Marshalling
106 */
107 HWTEST_F(MissionInfoTest, mission_info_dto_Unmarshalling_0100, TestSize.Level1)
108 {
109 InnerMissionInfoDto info;
110 MessageParcel parcel;
111 EXPECT_FALSE(info.Unmarshalling(parcel));
112 }
113 }
114 }