Skip to content

Commit 7a42459

Browse files
committed
Fix the crash error while running the unit-test
Signed-off-by: Lo,Chin-Ran <chin-ran.lo@nxp.com>
1 parent 9a51a1d commit 7a42459

File tree

1 file changed

+39
-15
lines changed

1 file changed

+39
-15
lines changed

src/wifipaf/tests/TestWiFiPAFLayer.cpp

+39-15
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ class TestWiFiPAFLayer : public WiFiPAFLayer, private WiFiPAFLayerDelegate, publ
6363
void TearDown() override
6464
{
6565
mWiFiPAFTransport = nullptr;
66-
Shutdown(nullptr);
66+
Shutdown([](uint32_t id, WiFiPAF::WiFiPafRole role) {});
6767
}
6868

6969
CHIP_ERROR WiFiPAFMessageReceived(WiFiPAFSession & RxInfo, System::PacketBufferHandle && msg) override { return CHIP_NO_ERROR; }
@@ -114,31 +114,55 @@ TEST_F(TestWiFiPAFLayer, CheckWiFiPAFTransportCapabilitiesResponseMessage)
114114

115115
TEST_F(TestWiFiPAFLayer, CheckPafSession)
116116
{
117-
// Add a session by giving node_id, discriminator
118-
WiFiPAF::WiFiPAFSession sessionInfo = { .nodeId = 0x1, .discriminator = 0xF00 };
117+
// Add the 1st session by giving node_id, discriminator
118+
WiFiPAF::WiFiPAFSession sessionInfo = { .role = WiFiPAF::WiFiPafRole::kWiFiPafRole_Subscriber,
119+
.nodeId = 0x1,
120+
.discriminator = 0xF01 };
119121
EXPECT_EQ(AddPafSession(PafInfoAccess::kAccNodeInfo, sessionInfo), CHIP_NO_ERROR);
120122

123+
// Add the 2nd session
124+
sessionInfo = { .role = WiFiPAF::WiFiPafRole::kWiFiPafRole_Subscriber,
125+
.nodeId = 0x2,
126+
.discriminator = 0xF02 };
127+
EXPECT_EQ(AddPafSession(PafInfoAccess::kAccNodeInfo, sessionInfo), CHIP_NO_ERROR);
128+
129+
// Add the 3rd session => expect: no space
130+
sessionInfo.id = 0x3;
131+
EXPECT_EQ(AddPafSession(PafInfoAccess::kAccSessionId, sessionInfo), CHIP_ERROR_PROVIDER_LIST_EXHAUSTED);
132+
121133
// Get the session info by giving node_id
122134
sessionInfo.nodeId = 0x1;
123135
auto pPafSessionInfo_nodeid = GetPAFInfo(PafInfoAccess::kAccNodeId, sessionInfo);
124-
EXPECT_EQ(pPafSessionInfo_nodeid->nodeId, sessionInfo.nodeId);
125-
EXPECT_EQ(pPafSessionInfo_nodeid->discriminator, sessionInfo.discriminator);
136+
pPafSessionInfo_nodeid->id = 0x1;
137+
EXPECT_EQ(pPafSessionInfo_nodeid->nodeId, 0x1u);
138+
EXPECT_EQ(pPafSessionInfo_nodeid->discriminator, 0xF01);
126139

127140
// Get the session info by giving the discriminator
128-
sessionInfo.discriminator = 0xF00;
141+
sessionInfo.discriminator = 0xF01;
129142
auto pPafSessionInfo_disc = GetPAFInfo(PafInfoAccess::kAccDisc, sessionInfo);
130-
EXPECT_EQ(pPafSessionInfo_disc->nodeId, sessionInfo.nodeId);
131-
EXPECT_EQ(pPafSessionInfo_disc->discriminator, sessionInfo.discriminator);
132-
133-
// Set the session ID of the existing session
134-
pPafSessionInfo_disc->id = 0x1;
135-
136-
// Add a new session, but no space
137-
sessionInfo.id = 0x2;
138-
EXPECT_EQ(AddPafSession(PafInfoAccess::kAccSessionId, sessionInfo), CHIP_ERROR_PROVIDER_LIST_EXHAUSTED);
143+
EXPECT_NE(pPafSessionInfo_disc, nullptr);
144+
EXPECT_EQ(pPafSessionInfo_disc->nodeId, 0x1u);
145+
pPafSessionInfo_disc->id = 1;
146+
147+
sessionInfo.discriminator = 0xF02;
148+
pPafSessionInfo_disc = GetPAFInfo(PafInfoAccess::kAccDisc, sessionInfo);
149+
EXPECT_NE(pPafSessionInfo_disc, nullptr);
150+
EXPECT_EQ(pPafSessionInfo_disc->nodeId, 0x2u);
151+
EXPECT_EQ(pPafSessionInfo_disc->discriminator, 0xF02);
152+
pPafSessionInfo_disc->id = 2;
153+
154+
// Get the session info by giving the session id
155+
sessionInfo.id = 0x1;
156+
auto pPafSessionInfo_id = GetPAFInfo(PafInfoAccess::kAccSessionId, sessionInfo);
157+
EXPECT_NE(pPafSessionInfo_id, nullptr);
158+
EXPECT_EQ(pPafSessionInfo_id->nodeId, 0x1u);
159+
EXPECT_EQ(pPafSessionInfo_id->discriminator, 0xF01);
139160

161+
// Remove the session
140162
sessionInfo.id = 0x1;
141163
EXPECT_EQ(RmPafSession(PafInfoAccess::kAccSessionId, sessionInfo), CHIP_NO_ERROR);
164+
sessionInfo.id = 0x2;
165+
EXPECT_EQ(RmPafSession(PafInfoAccess::kAccSessionId, sessionInfo), CHIP_NO_ERROR);
142166
}
143167

144168
TEST_F(TestWiFiPAFLayer, CheckNewEndpoint)

0 commit comments

Comments
 (0)