• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 "publisher_item_test.h"
17 
18 using namespace testing::ext;
19 using namespace std;
20 namespace OHOS {
21 namespace DistributedHardware {
22 
SetUpTestCase(void)23 void PublisherItemTest::SetUpTestCase(void) {}
24 
TearDownTestCase(void)25 void PublisherItemTest::TearDownTestCase(void) {}
26 
SetUp()27 void PublisherItemTest::SetUp() {}
28 
TearDown()29 void PublisherItemTest::TearDown() {}
30 
31 /**
32  * @tc.name: AddListener_001
33  * @tc.desc: Verify the AddListener ToJson function.
34  * @tc.type: FUNC
35  * @tc.require: AR000GHSCV
36  */
37 HWTEST_F(PublisherItemTest, AddListener_001, TestSize.Level0)
38 {
39     PublisherItem item;
40     sptr<IPublisherListener> listener = nullptr;
41     item.AddListener(listener);
42     EXPECT_EQ(true, item.listeners_.empty());
43 }
44 
45 /**
46  * @tc.name: AddListener_002
47  * @tc.desc: Verify the AddListener ToJson function.
48  * @tc.type: FUNC
49  * @tc.require: AR000GHSCV
50  */
51 HWTEST_F(PublisherItemTest, AddListener_002, TestSize.Level0)
52 {
53     PublisherItem item(DHTopic::TOPIC_MIN);
54     sptr<IPublisherListener> listener = nullptr;
55     item.AddListener(listener);
56     EXPECT_EQ(true, item.listeners_.empty());
57 }
58 
59 /**
60  * @tc.name: AddListener_003
61  * @tc.desc: Verify the AddListener ToJson function.
62  * @tc.type: FUNC
63  * @tc.require: AR000GHSCV
64  */
65 HWTEST_F(PublisherItemTest, AddListener_003, TestSize.Level0)
66 {
67     PublisherItem item(DHTopic::TOPIC_MIN);
68     sptr<IPublisherListener> listener = new MockIPublisherListener();
69     item.AddListener(listener);
70     EXPECT_EQ(false, item.listeners_.empty());
71 }
72 
73 
74 /**
75  * @tc.name: RemoveListener_001
76  * @tc.desc: Verify the RemoveListener ToJson function.
77  * @tc.type: FUNC
78  * @tc.require: AR000GHSCV
79  */
80 HWTEST_F(PublisherItemTest, RemoveListener_001, TestSize.Level0)
81 {
82     PublisherItem item(DHTopic::TOPIC_MIN);
83     sptr<IPublisherListener> listener = nullptr;
84     item.RemoveListener(listener);
85     EXPECT_EQ(true, item.listeners_.empty());
86 }
87 
88 /**
89  * @tc.name: RemoveListener_002
90  * @tc.desc: Verify the RemoveListener ToJson function.
91  * @tc.type: FUNC
92  * @tc.require: AR000GHSCV
93  */
94 HWTEST_F(PublisherItemTest, RemoveListener_002, TestSize.Level0)
95 {
96     PublisherItem item(DHTopic::TOPIC_MIN);
97     sptr<IPublisherListener> listener = new MockIPublisherListener();
98     item.RemoveListener(listener);
99     EXPECT_EQ(true, item.listeners_.empty());
100 }
101 
102 /**
103  * @tc.name: PublishMessage_001
104  * @tc.desc: Verify the PublishMessage ToJson function.
105  * @tc.type: FUNC
106  * @tc.require: AR000GHSCV
107  */
108 HWTEST_F(PublisherItemTest, PublishMessage_001, TestSize.Level0)
109 {
110     PublisherItem item(DHTopic::TOPIC_MIN);
111     std::string message;
112     item.PublishMessage(message);
113     EXPECT_EQ(true, item.listeners_.empty());
114 }
115 
116 /**
117  * @tc.name: PublishMessage_002
118  * @tc.desc: Verify the PublishMessage ToJson function.
119  * @tc.type: FUNC
120  * @tc.require: AR000GHSCV
121  */
122 HWTEST_F(PublisherItemTest, PublishMessage_002, TestSize.Level0)
123 {
124     PublisherItem item(DHTopic::TOPIC_MIN);
125     std::string message;
126     uint32_t MAX_MESSAGE_LEN = 40 * 1024 * 1024 + 10;
127     message.resize(MAX_MESSAGE_LEN);
128     item.PublishMessage(message);
129     EXPECT_EQ(true, item.listeners_.empty());
130 }
131 
132 /**
133  * @tc.name: PublishMessage_003
134  * @tc.desc: Verify the PublishMessage ToJson function.
135  * @tc.type: FUNC
136  * @tc.require: AR000GHSCV
137  */
138 HWTEST_F(PublisherItemTest, PublishMessage_003, TestSize.Level0)
139 {
140     PublisherItem item(DHTopic::TOPIC_MIN);
141     std::string message = "message";
142     sptr<IPublisherListener> listener = new MockIPublisherListener();
143     item.listeners_.insert(listener);
144     item.PublishMessage(message);
145     EXPECT_EQ(false, item.listeners_.empty());
146 }
147 } // namespace DistributedHardware
148 } // namespace OHOS
149