Skip to content

Commit aa77173

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 aa77173

File tree

1 file changed

+38
-16
lines changed

1 file changed

+38
-16
lines changed

src/wifipaf/tests/TestWiFiPAFLayer.cpp

+38-16
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,53 @@ 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, .nodeId = 0x2, .discriminator = 0xF02 };
125+
EXPECT_EQ(AddPafSession(PafInfoAccess::kAccNodeInfo, sessionInfo), CHIP_NO_ERROR);
126+
127+
// Add the 3rd session => expect: no space
128+
sessionInfo.id = 0x3;
129+
EXPECT_EQ(AddPafSession(PafInfoAccess::kAccSessionId, sessionInfo), CHIP_ERROR_PROVIDER_LIST_EXHAUSTED);
130+
121131
// Get the session info by giving node_id
122132
sessionInfo.nodeId = 0x1;
123133
auto pPafSessionInfo_nodeid = GetPAFInfo(PafInfoAccess::kAccNodeId, sessionInfo);
124-
EXPECT_EQ(pPafSessionInfo_nodeid->nodeId, sessionInfo.nodeId);
125-
EXPECT_EQ(pPafSessionInfo_nodeid->discriminator, sessionInfo.discriminator);
134+
pPafSessionInfo_nodeid->id = 0x1;
135+
EXPECT_EQ(pPafSessionInfo_nodeid->nodeId, 0x1u);
136+
EXPECT_EQ(pPafSessionInfo_nodeid->discriminator, 0xF01);
126137

127138
// Get the session info by giving the discriminator
128-
sessionInfo.discriminator = 0xF00;
139+
sessionInfo.discriminator = 0xF01;
129140
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);
139-
141+
EXPECT_NE(pPafSessionInfo_disc, nullptr);
142+
EXPECT_EQ(pPafSessionInfo_disc->nodeId, 0x1u);
143+
pPafSessionInfo_disc->id = 1;
144+
145+
sessionInfo.discriminator = 0xF02;
146+
pPafSessionInfo_disc = GetPAFInfo(PafInfoAccess::kAccDisc, sessionInfo);
147+
EXPECT_NE(pPafSessionInfo_disc, nullptr);
148+
EXPECT_EQ(pPafSessionInfo_disc->nodeId, 0x2u);
149+
EXPECT_EQ(pPafSessionInfo_disc->discriminator, 0xF02);
150+
pPafSessionInfo_disc->id = 2;
151+
152+
// Get the session info by giving the session id
153+
sessionInfo.id = 0x1;
154+
auto pPafSessionInfo_id = GetPAFInfo(PafInfoAccess::kAccSessionId, sessionInfo);
155+
EXPECT_NE(pPafSessionInfo_id, nullptr);
156+
EXPECT_EQ(pPafSessionInfo_id->nodeId, 0x1u);
157+
EXPECT_EQ(pPafSessionInfo_id->discriminator, 0xF01);
158+
159+
// Remove the session
140160
sessionInfo.id = 0x1;
141161
EXPECT_EQ(RmPafSession(PafInfoAccess::kAccSessionId, sessionInfo), CHIP_NO_ERROR);
162+
sessionInfo.id = 0x2;
163+
EXPECT_EQ(RmPafSession(PafInfoAccess::kAccSessionId, sessionInfo), CHIP_NO_ERROR);
142164
}
143165

144166
TEST_F(TestWiFiPAFLayer, CheckNewEndpoint)

0 commit comments

Comments
 (0)