@@ -164,6 +164,95 @@ pub(crate) mod tokio {
164164 }
165165}
166166
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+
167256#[ allow( warnings) ]
168257#[ allow( clippy:: all) ]
169258#[ allow( clippy:: pedantic) ]
0 commit comments