@@ -164,6 +164,95 @@ pub(crate) mod tokio {
164
164
}
165
165
}
166
166
167
+ #[ cfg( test) ]
168
+ mod tests {
169
+ use super :: * ;
170
+
171
+ #[ test]
172
+ fn validate_process_id_0 ( ) {
173
+ let process_id = 0 ;
174
+ let result = validate_process_id ( process_id) ;
175
+ assert ! ( result. is_err( ) ) ;
176
+ }
177
+
178
+ #[ test]
179
+ fn validate_process_id_1 ( ) {
180
+ let process_id = 1 ;
181
+ let result = validate_process_id ( process_id) ;
182
+ assert ! ( result. is_err( ) ) ;
183
+ }
184
+
185
+ #[ test]
186
+ fn validate_process_id_99998 ( ) {
187
+ let process_id = 99998 ;
188
+ let result = validate_process_id ( process_id) ;
189
+ assert ! ( result. is_ok( ) ) ;
190
+ }
191
+
192
+ #[ test]
193
+ fn validate_process_id_99999 ( ) {
194
+ let process_id = 99999 ;
195
+ let result = validate_process_id ( process_id) ;
196
+ assert ! ( result. is_err( ) ) ;
197
+ }
198
+
199
+ #[ test]
200
+ fn child_process_id_map_filter_false ( ) {
201
+ let process_info = ProcessInfo {
202
+ process_id : 0 ,
203
+ parent_process_id : 0 ,
204
+ name : "name" . to_string ( ) ,
205
+ } ;
206
+ assert ! ( !child_process_id_map_filter( & process_info) ) ;
207
+ }
208
+
209
+ #[ test]
210
+ fn get_process_info_0 ( ) {
211
+ let process_id = 0 ;
212
+ let result = get_process_info ( process_id) ;
213
+ assert ! ( result. is_err( ) ) ;
214
+ assert_eq ! (
215
+ result. unwrap_err( ) . to_string( ) ,
216
+ "I/O error: Operation not permitted (os error 1)" . to_string( )
217
+ ) ;
218
+ }
219
+
220
+ #[ test]
221
+ fn get_process_info_1 ( ) {
222
+ let process_id = 1 ;
223
+ let result = get_process_info ( process_id) ;
224
+ assert ! ( result. is_err( ) ) ;
225
+ assert_eq ! (
226
+ result. unwrap_err( ) . to_string( ) ,
227
+ "I/O error: Operation not permitted (os error 1)" . to_string( )
228
+ ) ;
229
+ }
230
+
231
+ #[ test]
232
+ fn get_process_info_self ( ) {
233
+ let process_id = std:: process:: id ( ) ;
234
+ let result = get_process_info ( process_id) ;
235
+ assert ! ( result. is_ok( ) ) ;
236
+ }
237
+
238
+ #[ test]
239
+ fn get_process_ids_test ( ) {
240
+ let process_ids = get_process_ids ( ) . expect ( "Failed to get process ids" ) ;
241
+ assert ! ( process_ids. len( ) > 1 ) ;
242
+ assert ! ( process_ids. contains( & 0 ) ) ;
243
+ assert ! ( process_ids. contains( & 1 ) ) ;
244
+ }
245
+
246
+ #[ test]
247
+ fn get_process_infos_test ( ) {
248
+ let process_infos = get_process_infos ( ) . expect ( "Failed to get process infos" ) ;
249
+ assert ! ( process_infos. len( ) > 1 ) ;
250
+ assert ! ( process_infos
251
+ . iter( )
252
+ . any( |x| x. process_id == std:: process:: id( ) ) ) ;
253
+ }
254
+ }
255
+
167
256
#[ allow( warnings) ]
168
257
#[ allow( clippy:: all) ]
169
258
#[ allow( clippy:: pedantic) ]
0 commit comments