@@ -63,7 +63,7 @@ class TestWiFiPAFLayer : public WiFiPAFLayer, private WiFiPAFLayerDelegate, publ
63
63
void TearDown () override
64
64
{
65
65
mWiFiPAFTransport = nullptr ;
66
- Shutdown (nullptr );
66
+ Shutdown ([]( uint32_t id, WiFiPAF::WiFiPafRole role) {} );
67
67
}
68
68
69
69
CHIP_ERROR WiFiPAFMessageReceived (WiFiPAFSession & RxInfo, System::PacketBufferHandle && msg) override { return CHIP_NO_ERROR; }
@@ -114,31 +114,55 @@ TEST_F(TestWiFiPAFLayer, CheckWiFiPAFTransportCapabilitiesResponseMessage)
114
114
115
115
TEST_F (TestWiFiPAFLayer, CheckPafSession)
116
116
{
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 };
119
121
EXPECT_EQ (AddPafSession (PafInfoAccess::kAccNodeInfo , sessionInfo), CHIP_NO_ERROR);
120
122
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
+
121
133
// Get the session info by giving node_id
122
134
sessionInfo.nodeId = 0x1 ;
123
135
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 );
126
139
127
140
// Get the session info by giving the discriminator
128
- sessionInfo.discriminator = 0xF00 ;
141
+ sessionInfo.discriminator = 0xF01 ;
129
142
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 );
139
160
161
+ // Remove the session
140
162
sessionInfo.id = 0x1 ;
141
163
EXPECT_EQ (RmPafSession (PafInfoAccess::kAccSessionId , sessionInfo), CHIP_NO_ERROR);
164
+ sessionInfo.id = 0x2 ;
165
+ EXPECT_EQ (RmPafSession (PafInfoAccess::kAccSessionId , sessionInfo), CHIP_NO_ERROR);
142
166
}
143
167
144
168
TEST_F (TestWiFiPAFLayer, CheckNewEndpoint)
0 commit comments